Skip to content

Commit 2453683

Browse files
committed
## Java SDK Changes:
* `gustoembedded.payrolls.delete()`: `errors[]` **Changed** (Breaking ⚠️) * `gustoembedded.contractorPaymentGroups.getV1ContractorPaymentGroupsIdPartnerDisbursements()`: `errors[]` **Changed** (Breaking ⚠️) * `gustoembedded.industrySelection.update()`: * `request` **Changed** (Breaking ⚠️) * `error.status[404]` **Added** * `gustoembedded.flows.create()`: * `request` **Changed** (Breaking ⚠️) * `error.status[404]` **Added** * `gustoembedded.locations.create()`: * `request` **Changed** (Breaking ⚠️) * `error.status[404]` **Added** * `gustoembedded.peopleBatches.getV1PeopleBatchesPeopleBatchUuid()`: * `request.xGustoApiVersion` **Changed** (Breaking ⚠️) * `errors[]` **Changed** (Breaking ⚠️) * `gustoembedded.peopleBatches.postV1CompaniesCompanyIdPeopleBatches()`: * `request.xGustoApiVersion` **Changed** (Breaking ⚠️) * `errors[]` **Changed** (Breaking ⚠️) * `gustoembedded.reimbursements.deleteV1RecurringReimbursements()`: * `request.xGustoApiVersion` **Changed** (Breaking ⚠️) * `errors[]` **Changed** (Breaking ⚠️) * `gustoembedded.reimbursements.putV1RecurringReimbursements()`: * `request.xGustoApiVersion` **Changed** (Breaking ⚠️) * `errors[]` **Changed** (Breaking ⚠️) * `gustoembedded.reimbursements.getV1RecurringReimbursements()`: * `request.xGustoApiVersion` **Changed** (Breaking ⚠️) * `errors[]` **Changed** (Breaking ⚠️) * `gustoembedded.reimbursements.postV1EmployeesEmployeeIdRecurringReimbursements()`: * `request.xGustoApiVersion` **Changed** (Breaking ⚠️) * `errors[]` **Changed** (Breaking ⚠️) * `gustoembedded.reimbursements.getV1EmployeesEmployeeIdRecurringReimbursements()`: * `request.xGustoApiVersion` **Changed** (Breaking ⚠️) * `errors[]` **Changed** (Breaking ⚠️) * `gustoembedded.salaryEstimates.getV1SalaryEstimatesOccupations()`: `request.xGustoApiVersion` **Changed** (Breaking ⚠️) * `gustoembedded.salaryEstimates.postV1SalaryEstimatesUuidAccept()`: * `request.xGustoApiVersion` **Changed** (Breaking ⚠️) * `errors[]` **Changed** (Breaking ⚠️) * `gustoembedded.salaryEstimates.putV1SalaryEstimatesId()`: * `request.xGustoApiVersion` **Changed** (Breaking ⚠️) * `errors[]` **Changed** (Breaking ⚠️) * `gustoembedded.salaryEstimates.getV1SalaryEstimatesId()`: * `request.xGustoApiVersion` **Changed** (Breaking ⚠️) * `errors[]` **Changed** (Breaking ⚠️) * `gustoembedded.salaryEstimates.postV1EmployeesEmployeeIdSalaryEstimates()`: * `request.xGustoApiVersion` **Changed** (Breaking ⚠️) * `errors[]` **Changed** (Breaking ⚠️) * `gustoembedded.locations.retrieve()`: `errors[]` **Changed** (Breaking ⚠️) * `gustoembedded.locations.update()`: `errors[]` **Changed** (Breaking ⚠️) * `gustoembedded.locations.getMinimumWages()`: `errors[]` **Changed** (Breaking ⚠️) * `gustoembedded.bankAccounts.get()`: `errors[]` **Changed** (Breaking ⚠️) * `gustoembedded.bankAccounts.create()`: `errors[]` **Changed** (Breaking ⚠️) * `gustoembedded.bankAccounts.deleteV1CompaniesCompanyIdBankAccountsBankAccountId()`: `errors[]` **Changed** (Breaking ⚠️) * `gustoembedded.wireInRequests.list()`: `response.[].paymentType.enum(contractorPaymentGroup)` **Added** (Breaking ⚠️) * `gustoembedded.wireInRequests.submit()`: `response.paymentType.enum(contractorPaymentGroup)` **Added** (Breaking ⚠️) * `gustoembedded.externalPayrolls.listTaxLiabilities()`: `response.[]` **Changed** (Breaking ⚠️) * `gustoembedded.externalPayrolls.updateTaxLiabilities()`: `response.[]` **Changed** (Breaking ⚠️) * `gustoembedded.wireInRequests.get()`: `response.paymentType.enum(contractorPaymentGroup)` **Added** (Breaking ⚠️) * `gustoembedded.employees.list()`: `errors[]` **Changed** (Breaking ⚠️) * `gustoembedded.employees.create()`: * `requestBody.email` **Changed** * `errors[]` **Changed** (Breaking ⚠️) * `gustoembedded.employees.get()`: `errors[]` **Changed** (Breaking ⚠️) * `gustoembedded.employees.update()`: `errors[]` **Changed** (Breaking ⚠️) * `gustoembedded.employees.delete()`: `errors[]` **Changed** (Breaking ⚠️) * `gustoembedded.employees.updateOnboardingDocumentsConfig()`: * `request` **Changed** (Breaking ⚠️) * `response` **Changed** (Breaking ⚠️) * `error.status[404]` **Added** * `gustoembedded.employees.getOnboardingStatus()`: `errors[]` **Changed** (Breaking ⚠️) * `gustoembedded.employees.updateOnboardingStatus()`: `errors[]` **Changed** (Breaking ⚠️) * `gustoembedded.recoveryCases.get()`: `response.[]` **Changed** (Breaking ⚠️) * `gustoembedded.informationRequests.submit()`: `response.requiredQuestions[].responseType.enum(radioButton)` **Added** (Breaking ⚠️) * `gustoembedded.employeeEmployments.getHistory()`: `errors[]` **Changed** (Breaking ⚠️) * `gustoembedded.employeeAddresses.get()`: `errors[]` **Changed** (Breaking ⚠️) * `gustoembedded.employeeAddresses.create()`: `errors[]` **Changed** (Breaking ⚠️) * `gustoembedded.employeeAddresses.retrieveHomeAddress()`: `errors[]` **Changed** (Breaking ⚠️) * `gustoembedded.employeeAddresses.update()`: `errors[]` **Changed** (Breaking ⚠️) * `gustoembedded.employeeAddresses.delete()`: `errors[]` **Changed** (Breaking ⚠️) * `gustoembedded.employeeAddresses.getWorkAddresses()`: `errors[]` **Changed** (Breaking ⚠️) * `gustoembedded.employeeAddresses.createWorkAddress()`: `errors[]` **Changed** (Breaking ⚠️) * `gustoembedded.employeeAddresses.retrieveWorkAddress()`: `errors[]` **Changed** (Breaking ⚠️) * `gustoembedded.employeeAddresses.updateWorkAddress()`: `errors[]` **Changed** (Breaking ⚠️) * `gustoembedded.employeeAddresses.deleteWorkAddress()`: `errors[]` **Changed** (Breaking ⚠️) * `gustoembedded.informationRequests.getInformationRequests()`: `response.[].requiredQuestions[].responseType.enum(radioButton)` **Added** (Breaking ⚠️) * `gustoembedded.employeeTaxSetup.getStateTaxes()`: `errors[]` **Changed** (Breaking ⚠️) * `gustoembedded.employeeTaxSetup.updateStateTaxes()`: `errors[]` **Changed** (Breaking ⚠️) * `gustoembedded.holidayPayPolicies.removeEmployees()`: * `request.xGustoApiVersion` **Changed** (Breaking ⚠️) * `errors[]` **Changed** (Breaking ⚠️) * `gustoembedded.holidayPayPolicies.addEmployees()`: * `request.xGustoApiVersion` **Changed** (Breaking ⚠️) * `errors[]` **Changed** (Breaking ⚠️) * `gustoembedded.holidayPayPolicies.delete()`: * `request.xGustoApiVersion` **Changed** (Breaking ⚠️) * `errors[]` **Changed** (Breaking ⚠️) * `gustoembedded.contractors.create()`: * `request` **Changed** (Breaking ⚠️) * `response` **Changed** (Breaking ⚠️) * `error.status[404]` **Added** * `gustoembedded.contractors.list()`: * `request` **Changed** (Breaking ⚠️) * `response.[]` **Changed** (Breaking ⚠️) * `error.status[404]` **Added** * `gustoembedded.contractors.get()`: * `request.xGustoApiVersion` **Changed** * `response` **Changed** (Breaking ⚠️) * `error.status[404]` **Added** * `gustoembedded.contractors.update()`: * `request` **Changed** (Breaking ⚠️) * `response` **Changed** (Breaking ⚠️) * `error.status[404]` **Added** * `gustoembedded.holidayPayPolicies.update()`: * `request.xGustoApiVersion` **Changed** (Breaking ⚠️) * `errors[]` **Changed** (Breaking ⚠️) * `gustoembedded.holidayPayPolicies.create()`: * `request.xGustoApiVersion` **Changed** (Breaking ⚠️) * `errors[]` **Changed** (Breaking ⚠️) * `gustoembedded.contractors.getV1CompaniesCompanyIdContractorsPaymentDetails()`: `errors[]` **Changed** (Breaking ⚠️) * `gustoembedded.contractorPaymentMethod.get()`: `response.type.enum(null)` **Removed** (Breaking ⚠️) * `gustoembedded.contractorPaymentMethod.update()`: `response.type.enum(null)` **Removed** (Breaking ⚠️) * `gustoembedded.introspection.oauthAccessToken()`: `request` **Changed** (Breaking ⚠️) * `gustoembedded.payrolls.createOffCycle()`: * `requestBody.employeeUuids` **Changed** * `errors[]` **Changed** (Breaking ⚠️) * `gustoembedded.payrolls.get()`: * `response.creditBlockers[].unblockOptions[]` **Changed** * `errors[]` **Changed** (Breaking ⚠️) * `gustoembedded.payrolls.update()`: `errors[]` **Changed** (Breaking ⚠️) * `gustoembedded.payrolls.list()`: * `response.[].creditBlockers[].unblockOptions[]` **Changed** * `errors[]` **Changed** (Breaking ⚠️) * `gustoembedded.holidayPayPolicies.get()`: * `request.xGustoApiVersion` **Changed** (Breaking ⚠️) * `errors[]` **Changed** (Breaking ⚠️) * `gustoembedded.companies.suspensions.get()`: `errors[]` **Changed** (Breaking ⚠️) * `gustoembedded.payrolls.cancel()`: * `request.xGustoApiVersion` **Changed** * `response` **Changed** (Breaking ⚠️) * `error.status[404]` **Added** * `gustoembedded.payrolls.getPayStub()`: `errors[]` **Changed** (Breaking ⚠️) * `gustoembedded.payrolls.getPayStubs()`: `errors[]` **Changed** (Breaking ⚠️) * `gustoembedded.payrolls.generatePrintableChecks()`: `response.startingCheckNumber` **Changed** (Breaking ⚠️) * `gustoembedded.payrolls.getV1CompaniesCompanyIdPayrollsIdPartnerDisbursements()`: `errors[]` **Changed** (Breaking ⚠️) * `gustoembedded.payrolls.patchV1CompaniesCompanyIdPayrollsIdPartnerDisbursements()`: `errors[]` **Changed** (Breaking ⚠️) * `gustoembedded.timeOffPolicies.calculateAccruingTimeOffHours()`: * `request` **Changed** (Breaking ⚠️) * `error.status[404]` **Added** * `gustoembedded.timeOffPolicies.get()`: * `request.xGustoApiVersion` **Changed** (Breaking ⚠️) * `errors[]` **Changed** (Breaking ⚠️) * `gustoembedded.timeOffPolicies.update()`: * `request.xGustoApiVersion` **Changed** (Breaking ⚠️) * `errors[]` **Changed** (Breaking ⚠️) * `gustoembedded.timeOffPolicies.getAll()`: * `request.xGustoApiVersion` **Changed** (Breaking ⚠️) * `errors[]` **Changed** (Breaking ⚠️) * `gustoembedded.timeOffPolicies.create()`: * `request.xGustoApiVersion` **Changed** (Breaking ⚠️) * `errors[]` **Changed** (Breaking ⚠️) * `gustoembedded.timeOffPolicies.addEmployees()`: * `request.xGustoApiVersion` **Changed** (Breaking ⚠️) * `errors[]` **Changed** (Breaking ⚠️) * `gustoembedded.timeOffPolicies.removeEmployees()`: * `request.xGustoApiVersion` **Changed** (Breaking ⚠️) * `errors[]` **Changed** (Breaking ⚠️) * `gustoembedded.timeOffPolicies.updateBalance()`: * `request.xGustoApiVersion` **Changed** (Breaking ⚠️) * `errors[]` **Changed** (Breaking ⚠️) * `gustoembedded.timeOffPolicies.deactivate()`: * `request.xGustoApiVersion` **Changed** (Breaking ⚠️) * `errors[]` **Changed** (Breaking ⚠️) * `gustoembedded.contractorPayments.create()`: * `request` **Changed** (Breaking ⚠️) * `error.status[404]` **Added** * `gustoembedded.i9Verification.employerSign()`: `response` **Changed** (Breaking ⚠️) * `gustoembedded.i9Verification.update()`: `response` **Changed** (Breaking ⚠️) * `gustoembedded.i9Verification.getAuthorization()`: `response` **Changed** (Breaking ⚠️) * `gustoembedded.contractorPaymentGroups.getList()`: * `response.[]` **Changed** (Breaking ⚠️) * `errors[]` **Changed** (Breaking ⚠️) * `gustoembedded.contractorPaymentGroups.create()`: * `requestBody` **Changed** (Breaking ⚠️) * `response` **Changed** (Breaking ⚠️) * `errors[]` **Changed** (Breaking ⚠️) * `gustoembedded.contractorPaymentGroups.preview()`: * `requestBody.contractorPayments[]` **Changed** (Breaking ⚠️) * `response` **Changed** (Breaking ⚠️) * `errors[]` **Changed** (Breaking ⚠️) * `gustoembedded.contractorPaymentGroups.get()`: * `response` **Changed** (Breaking ⚠️) * `errors[]` **Changed** (Breaking ⚠️) * `gustoembedded.contractorPaymentGroups.delete()`: `errors[]` **Changed** (Breaking ⚠️) * `gustoembedded.contractorPaymentGroups.fund()`: * `response` **Changed** (Breaking ⚠️) * `errors[]` **Changed** (Breaking ⚠️) * `gustoembedded.payrolls.getReceipt()`: `errors[]` **Changed** (Breaking ⚠️) * `gustoembedded.contractorPaymentGroups.patchV1ContractorPaymentGroupsIdPartnerDisbursements()`: `errors[]` **Changed** (Breaking ⚠️) * `gustoembedded.companyForms.getAll()`: `request.sortBy` **Changed** (Breaking ⚠️) * `gustoembedded.employeeBenefits.patchV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYear()`: * `request.xGustoApiVersion` **Changed** (Breaking ⚠️) * `errors[]` **Changed** (Breaking ⚠️) * `gustoembedded.reports.postV1CompaniesCompanyIdReportsEmployeesAnnualFicaWage()`: * `request.xGustoApiVersion` **Changed** (Breaking ⚠️) * `errors[]` **Changed** (Breaking ⚠️) * `gustoembedded.companyBenefits.get()`: `response.employeeBenefits[]` **Changed** (Breaking ⚠️) * `gustoembedded.companyBenefits.delete()`: `error` **Changed** (Breaking ⚠️) * `gustoembedded.employeeBenefits.getV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYear()`: * `request.xGustoApiVersion` **Changed** (Breaking ⚠️) * `errors[]` **Changed** (Breaking ⚠️) * `gustoembedded.companyBenefits.getRequirements()`: `response.employeeDeduction.choices` **Changed** (Breaking ⚠️) * `gustoembedded.employeeBenefits.postV1EmployeesEmployeeUuidSection603HighEarnerStatuses()`: * `request.xGustoApiVersion` **Changed** (Breaking ⚠️) * `errors[]` **Changed** (Breaking ⚠️) * `gustoembedded.employeeBenefits.getV1EmployeesEmployeeUuidSection603HighEarnerStatuses()`: * `request.xGustoApiVersion` **Changed** (Breaking ⚠️) * `errors[]` **Changed** (Breaking ⚠️) * `gustoembedded.paySchedules.getPreview()`: `error.status[422]` **Added** * `gustoembedded.employeeEmployments.deleteRehire()`: `error.status[422]` **Added** * `gustoembedded.reports.createCustom()`: * `requestBody.employeeUuids` **Changed** * `gustoembedded.contractorPayments.delete()`: * `request.xGustoApiVersion` **Changed** * `error.status[404]` **Added** * `gustoembedded.contractorPayments.get()`: * `request.xGustoApiVersion` **Changed** * `error.status[404]` **Added** * `gustoembedded.contractorPayments.list()`: * `request.xGustoApiVersion` **Changed** * `error.status[404]` **Added** * `gustoembedded.payrolls.prepare()`: * `request` **Changed** * `error` **Changed** * `gustoembedded.employeeEmployments.deleteTermination()`: `error.status[422]` **Added** * `gustoembedded.contractors.delete()`: * `request.xGustoApiVersion` **Changed** * `error` **Changed** * `gustoembedded.jobsAndCompensations.deleteCompensation()`: `error.status[422]` **Added** * `gustoembedded.jobsAndCompensations.delete()`: `error.status[422]` **Added** * `gustoembedded.employeePaymentMethod.deleteBankAccount()`: `error.status[422]` **Added** * `gustoembedded.events.get()`: * `request` **Changed** * `error.status[422]` **Added** * `gustoembedded.employeeBenefits.delete()`: `error.status[422]` **Added** * `gustoembedded.companyBenefits.updateEmployeeBenefits()`: * `requestBody.employeeBenefits[]` **Changed** * `gustoembedded.employeeTaxSetup.updateFederalTaxes()`: * `requestBody.twoJobs` **Changed** * `gustoembedded.externalPayrolls.delete()`: `error.status[422]` **Added** * `gustoembedded.externalPayrolls.calculateTaxes()`: `error.status[422]` **Added** * `gustoembedded.contractors.updateOnboardingStatus()`: * `requestBody.onboardingStatus` **Changed** * `gustoembedded.locations.get()`: * `request.xGustoApiVersion` **Changed** * `error.status[404]` **Added** * `gustoembedded.signatories.delete()`: `error.status[422]` **Added** * `gustoembedded.industrySelection.get()`: * `request.xGustoApiVersion` **Changed** * `error.status[404]` **Added** * `gustoembedded.companies.finishOnboarding()`: * `request.xGustoApiVersion` **Changed** * `error.status[404]` **Added** * `gustoembedded.companies.getOnboardingStatus()`: * `request.xGustoApiVersion` **Changed** * `error.status[404]` **Added** * `gustoembedded.companies.update()`: * `request.xGustoApiVersion` **Changed** * `response.locations[].active` **Added** * `error.status[404]` **Added** * `gustoembedded.companies.get()`: * `request.xGustoApiVersion` **Changed** * `response.locations[].active` **Added** * `error.status[404]` **Added** * `gustoembedded.companies.migrate()`: **Removed** (Breaking ⚠️) * `gustoembedded.payrolls.submit()`: **Added** * `gustoembedded.payrolls.calculate()`: **Added** * `gustoembedded.payrolls.calculateGrossUp()`: **Added** * `gustoembedded.companies.getV1PartnerManagedCompaniesCompanyUuidMigrationReadiness()`: **Added**
1 parent d32b45e commit 2453683

1,106 files changed

Lines changed: 100323 additions & 10262 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

.speakeasy/logs/changes/changes.html

Lines changed: 1360 additions & 0 deletions
Large diffs are not rendered by default.

.speakeasy/logs/changes/changes.md

Lines changed: 628 additions & 0 deletions
Large diffs are not rendered by default.

.speakeasy/logs/changes/new.openapi.yaml

Lines changed: 32958 additions & 0 deletions
Large diffs are not rendered by default.

.speakeasy/logs/changes/old.openapi.yaml

Lines changed: 31142 additions & 0 deletions
Large diffs are not rendered by default.

.speakeasy/workflow.lock

Lines changed: 6 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1,21 +1,20 @@
1-
speakeasyVersion: 1.692.0
1+
speakeasyVersion: 1.749.0
22
sources:
33
GustoEmbedded-OAS:
44
sourceNamespace: gusto-embedded-oas
5-
sourceRevisionDigest: sha256:830c753d02c15435169a357383c3757b9cf086825f7ebcb7ecbea75fd9d928a0
6-
sourceBlobDigest: sha256:bc5e757c99f4bfb2a8e8081f377fae1b07eee46e9aea1d1dc08b618685afc86f
5+
sourceRevisionDigest: sha256:353ac35f906604396561475a1069418f3d3cb45e22f98b31f8a2171bc0f762f3
6+
sourceBlobDigest: sha256:b977914793fbc0c613dfaf6628f8415bc3788dd127ed5472f50f6af566df842d
77
tags:
88
- latest
9-
- speakeasy-sdk-regen-1768522952
109
- "2025-06-15"
1110
targets:
1211
gusto-embedded:
1312
source: GustoEmbedded-OAS
1413
sourceNamespace: gusto-embedded-oas
15-
sourceRevisionDigest: sha256:830c753d02c15435169a357383c3757b9cf086825f7ebcb7ecbea75fd9d928a0
16-
sourceBlobDigest: sha256:bc5e757c99f4bfb2a8e8081f377fae1b07eee46e9aea1d1dc08b618685afc86f
14+
sourceRevisionDigest: sha256:353ac35f906604396561475a1069418f3d3cb45e22f98b31f8a2171bc0f762f3
15+
sourceBlobDigest: sha256:b977914793fbc0c613dfaf6628f8415bc3788dd127ed5472f50f6af566df842d
1716
codeSamplesNamespace: gusto-embedded-oas-java-code-samples
18-
codeSamplesRevisionDigest: sha256:d2af391897b29300b26571ba0f2713bcc06569178a238dcb179bef6a7a4d91ca
17+
codeSamplesRevisionDigest: sha256:75ae537b97b946678357c93110d02d9a4412cdd99daaf41d749de42b18a43702
1918
workflow:
2019
workflowVersion: 1.0.0
2120
speakeasyVersion: latest

gusto_embedded/.gitattributes

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -4,8 +4,5 @@
44
# Linux start script should use lf
55
/gradlew text eol=lf
66

7-
# These are Windows script files and should use crlf
8-
*.bat text eol=crlf
9-
107
# This allows generated code to be indexed correctly
118
*.java linguist-generated=false

gusto_embedded/.speakeasy/gen.lock

Lines changed: 3211 additions & 2146 deletions
Large diffs are not rendered by default.

gusto_embedded/.speakeasy/gen.yaml

Lines changed: 10 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -14,20 +14,22 @@ generation:
1414
securityFeb2025: true
1515
sharedErrorComponentsApr2025: false
1616
sharedNestedComponentsJan2026: false
17+
nameOverrideFeb2026: false
1718
auth:
1819
oAuth2ClientCredentialsEnabled: true
1920
oAuth2PasswordEnabled: true
2021
hoistGlobalSecurity: true
2122
schemas:
2223
allOfMergeStrategy: shallowMerge
2324
requestBodyFieldName: ""
25+
versioningStrategy: automatic
2426
persistentEdits: {}
2527
tests:
2628
generateTests: true
2729
generateNewTests: false
2830
skipResponseBodyAssertions: false
2931
java:
30-
version: 0.3.1
32+
version: 0.3.2
3133
additionalDependencies: []
3234
additionalPlugins: []
3335
artifactID: embedded-api
@@ -39,12 +41,16 @@ java:
3941
companyURL: www.mycompany.com
4042
defaultErrorName: APIException
4143
enableCustomCodeRegions: false
44+
enableFormatting: false
4245
enableSlf4jLogging: false
4346
enableStreamingUploads: false
47+
explicitDocImports: false
4448
flattenGlobalSecurity: true
4549
forwardCompatibleEnumsByDefault: false
50+
forwardCompatibleUnionsByDefault: "false"
4651
generateOptionalUnionAccessors: false
4752
generateSpringBootStarter: true
53+
generateUnionDocs: false
4854
githubURL: github.com/owner/repo
4955
groupID: com.gusto
5056
imports:
@@ -65,9 +71,11 @@ java:
6571
maxMethodParams: 4
6672
multipartArrayFormat: legacy
6773
nullFriendlyParameters: false
68-
openUnions: false
6974
operationScopedParams: true
7075
outputModelSuffix: output
76+
prefixModeMethodNames: false
7177
projectName: GustoEmbedded
78+
respectTitlesForPrimitiveUnionMembers: false
79+
showSetterGetterTypesInDocs: false
7280
templateVersion: v2
7381
unionStrategy: populated-fields

gusto_embedded/README.md

Lines changed: 63 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -33,6 +33,7 @@ Gusto API: Welcome to Gusto's Embedded Payroll API documentation!
3333
* [Server Selection](#server-selection)
3434
* [Custom HTTP Client](#custom-http-client)
3535
* [Debugging](#debugging)
36+
* [Jackson Configuration](#jackson-configuration)
3637
* [Development](#development)
3738
* [Maturity](#maturity)
3839
* [Contributions](#contributions)
@@ -50,15 +51,15 @@ The samples below show how a published SDK artifact is used:
5051

5152
Gradle:
5253
```groovy
53-
implementation 'com.gusto:embedded-api:0.3.1'
54+
implementation 'com.gusto:embedded-api:0.3.2'
5455
```
5556

5657
Maven:
5758
```xml
5859
<dependency>
5960
<groupId>com.gusto</groupId>
6061
<artifactId>embedded-api</artifactId>
61-
<version>0.3.1</version>
62+
<version>0.3.2</version>
6263
</dependency>
6364
```
6465

@@ -103,7 +104,7 @@ public class Application {
103104
.call();
104105

105106
if (res.object().isPresent()) {
106-
// handle response
107+
System.out.println(res.object().get());
107108
}
108109
}
109110
}
@@ -134,14 +135,23 @@ public class Application {
134135

135136
resFut.thenAccept(res -> {
136137
if (res.object().isPresent()) {
137-
// handle response
138+
System.out.println(res.object().get());
138139
}
139140
});
140141
}
141142
}
142143
```
143144

144145
[comp-fut]: https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html
146+
147+
#### Union Consumption Patterns
148+
149+
When a response field is a union model:
150+
151+
- Discriminated unions: branch on the discriminator (`switch`) and then narrow to the concrete type.
152+
- Non-discriminated unions: use generated accessors (for example `string()`, `asLong()`, `simpleObject()`) to determine the active variant.
153+
154+
For full model-specific examples (including Java 11/16/21 variants), see each union model's **Supported Types** section in the generated model docs.
145155
<!-- End SDK Example Usage [usage] -->
146156

147157
<!-- Start Asynchronous Support [async-support] -->
@@ -243,7 +253,7 @@ public class Application {
243253
.call();
244254

245255
if (res.object().isPresent()) {
246-
// handle response
256+
System.out.println(res.object().get());
247257
}
248258
}
249259
}
@@ -290,7 +300,7 @@ public class Application {
290300
.call();
291301

292302
if (res.object().isPresent()) {
293-
// handle response
303+
System.out.println(res.object().get());
294304
}
295305
}
296306
}
@@ -320,12 +330,12 @@ public class Application {
320330
* [createPartnerManaged](docs/sdks/companies/README.md#createpartnermanaged) - Create a partner managed company
321331
* [get](docs/sdks/companies/README.md#get) - Get a company
322332
* [update](docs/sdks/companies/README.md#update) - Update a company
323-
* [migrate](docs/sdks/companies/README.md#migrate) - Migrate company to embedded payroll
333+
* [getV1PartnerManagedCompaniesCompanyUuidMigrationReadiness](docs/sdks/companies/README.md#getv1partnermanagedcompaniescompanyuuidmigrationreadiness) - Check company migration readiness
324334
* [acceptTermsOfService](docs/sdks/companies/README.md#accepttermsofservice) - Accept terms of service for a company user
325335
* [retrieveTermsOfService](docs/sdks/companies/README.md#retrievetermsofservice) - Retrieve terms of service status for a company user
326336
* [createAdmin](docs/sdks/companies/README.md#createadmin) - Create an admin for the company
327337
* [listAdmins](docs/sdks/companies/README.md#listadmins) - Get all the admins at a company
328-
* [getOnboardingStatus](docs/sdks/companies/README.md#getonboardingstatus) - Get the company's onboarding status
338+
* [getOnboardingStatus](docs/sdks/companies/README.md#getonboardingstatus) - Get company onboarding status
329339
* [finishOnboarding](docs/sdks/companies/README.md#finishonboarding) - Finish company onboarding
330340
* [getCustomFields](docs/sdks/companies/README.md#getcustomfields) - Get the custom fields of a company
331341

@@ -511,7 +521,7 @@ public class Application {
511521
* [update](docs/sdks/employees/README.md#update) - Update an employee.
512522
* [delete](docs/sdks/employees/README.md#delete) - Delete an onboarding employee
513523
* [getCustomFields](docs/sdks/employees/README.md#getcustomfields) - Get an employee's custom fields
514-
* [updateOnboardingDocumentsConfig](docs/sdks/employees/README.md#updateonboardingdocumentsconfig) - Update an employee's onboarding documents config
524+
* [updateOnboardingDocumentsConfig](docs/sdks/employees/README.md#updateonboardingdocumentsconfig) - Update employee onboarding documents config
515525
* [getOnboardingStatus](docs/sdks/employees/README.md#getonboardingstatus) - Get the employee's onboarding status
516526
* [updateOnboardingStatus](docs/sdks/employees/README.md#updateonboardingstatus) - Update the employee's onboarding status
517527
* [getTimeOffActivities](docs/sdks/employees/README.md#gettimeoffactivities) - Get employee time off activities
@@ -597,7 +607,7 @@ public class Application {
597607
### [Introspection](docs/sdks/introspection/README.md)
598608

599609
* [getInfo](docs/sdks/introspection/README.md#getinfo) - Get info about the current access token
600-
* [oauthAccessToken](docs/sdks/introspection/README.md#oauthaccesstoken) - create or refresh an access token
610+
* [oauthAccessToken](docs/sdks/introspection/README.md#oauthaccesstoken) - Create a System Access Token or Refresh an Access Token
601611

602612
### [Invoices](docs/sdks/invoices/README.md)
603613

@@ -619,7 +629,7 @@ public class Application {
619629
### [Locations](docs/sdks/locations/README.md)
620630

621631
* [create](docs/sdks/locations/README.md#create) - Create a company location
622-
* [get](docs/sdks/locations/README.md#get) - Get company locations
632+
* [get](docs/sdks/locations/README.md#get) - Get all company locations
623633
* [retrieve](docs/sdks/locations/README.md#retrieve) - Get a location
624634
* [update](docs/sdks/locations/README.md#update) - Update a location
625635
* [getMinimumWages](docs/sdks/locations/README.md#getminimumwages) - Get minimum wages for a location
@@ -645,6 +655,9 @@ public class Application {
645655
* [prepare](docs/sdks/payrolls/README.md#prepare) - Prepare a payroll for update
646656
* [getReceipt](docs/sdks/payrolls/README.md#getreceipt) - Get a single payroll receipt
647657
* [getBlockers](docs/sdks/payrolls/README.md#getblockers) - Get all payroll blockers for a company
658+
* [calculateGrossUp](docs/sdks/payrolls/README.md#calculategrossup) - Calculate gross up for a payroll
659+
* [calculate](docs/sdks/payrolls/README.md#calculate) - Calculate a payroll
660+
* [submit](docs/sdks/payrolls/README.md#submit) - Submit payroll
648661
* [cancel](docs/sdks/payrolls/README.md#cancel) - Cancel a payroll
649662
* [getPayStub](docs/sdks/payrolls/README.md#getpaystub) - Get an employee pay stub (pdf)
650663
* [getPayStubs](docs/sdks/payrolls/README.md#getpaystubs) - Get an employee's pay stubs
@@ -807,7 +820,7 @@ public class Application {
807820
.call();
808821

809822
if (res.object().isPresent()) {
810-
// handle response
823+
System.out.println(res.object().get());
811824
}
812825
} catch (GustoEmbeddedException ex) { // all SDK exceptions inherit from GustoEmbeddedException
813826

@@ -848,7 +861,7 @@ public class Application {
848861
**Primary error:**
849862
* [`GustoEmbeddedException`](./src/main/java/models/errors/GustoEmbeddedException.java): The base class for HTTP error responses.
850863

851-
<details><summary>Less common errors (12)</summary>
864+
<details><summary>Less common errors (11)</summary>
852865

853866
<br />
854867

@@ -858,12 +871,11 @@ public class Application {
858871
many more subclasses in the JDK platform).
859872

860873
**Inherit from [`GustoEmbeddedException`](./src/main/java/models/errors/GustoEmbeddedException.java)**:
861-
* [`com.gusto.embedded_api.models.errors.UnprocessableEntityErrorObject`](./src/main/java/models/errors/com.gusto.embedded_api.models.errors.UnprocessableEntityErrorObject.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 164 of 277 methods.*
862-
* [`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. Status code `404`. Applicable to 4 of 277 methods.*
863-
* [`com.gusto.embedded_api.models.errors.PostV1CompaniesCompanyIdPeopleBatchesResponseBody`](./src/main/java/models/errors/com.gusto.embedded_api.models.errors.PostV1CompaniesCompanyIdPeopleBatchesResponseBody.java): conflict - idempotency key already used. Status code `409`. Applicable to 1 of 277 methods.*
864-
* [`com.gusto.embedded_api.models.errors.GetCompaniesCompanyUuidContractorPaymentsPreviewResponseBody`](./src/main/java/models/errors/com.gusto.embedded_api.models.errors.GetCompaniesCompanyUuidContractorPaymentsPreviewResponseBody.java): Unprocessable Entity (WebDAV). Status code `422`. Applicable to 1 of 277 methods.*
865-
* [`com.gusto.embedded_api.models.errors.DeleteV1CompanyBenefitsCompanyBenefitIdResponseBody`](./src/main/java/models/errors/com.gusto.embedded_api.models.errors.DeleteV1CompanyBenefitsCompanyBenefitIdResponseBody.java): Unprocessable Entity. Status code `422`. Applicable to 1 of 277 methods.*
866-
* [`com.gusto.embedded_api.models.errors.CompanySuspensionCreationErrors`](./src/main/java/models/errors/com.gusto.embedded_api.models.errors.CompanySuspensionCreationErrors.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. Status code `422`. Applicable to 1 of 277 methods.*
874+
* [`com.gusto.embedded_api.models.errors.UnprocessableEntityErrorObject`](./src/main/java/models/errors/com.gusto.embedded_api.models.errors.UnprocessableEntityErrorObject.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 144 of 280 methods.*
875+
* [`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. Applicable to 101 of 280 methods.*
876+
* [`com.gusto.embedded_api.models.errors.PostV1CompaniesCompanyIdPeopleBatchesResponseBody`](./src/main/java/models/errors/com.gusto.embedded_api.models.errors.PostV1CompaniesCompanyIdPeopleBatchesResponseBody.java): conflict - idempotency key already used. Status code `409`. Applicable to 1 of 280 methods.*
877+
* [`com.gusto.embedded_api.models.errors.GetCompaniesCompanyUuidContractorPaymentsPreviewResponseBody`](./src/main/java/models/errors/com.gusto.embedded_api.models.errors.GetCompaniesCompanyUuidContractorPaymentsPreviewResponseBody.java): Unprocessable Entity (WebDAV). Status code `422`. Applicable to 1 of 280 methods.*
878+
* [`com.gusto.embedded_api.models.errors.CompanySuspensionCreationErrors`](./src/main/java/models/errors/com.gusto.embedded_api.models.errors.CompanySuspensionCreationErrors.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. Status code `422`. Applicable to 1 of 280 methods.*
867879

868880

869881
</details>
@@ -907,7 +919,7 @@ public class Application {
907919
.call();
908920

909921
if (res.object().isPresent()) {
910-
// handle response
922+
System.out.println(res.object().get());
911923
}
912924
}
913925
}
@@ -938,7 +950,7 @@ public class Application {
938950
.call();
939951

940952
if (res.object().isPresent()) {
941-
// handle response
953+
System.out.println(res.object().get());
942954
}
943955
}
944956
}
@@ -1115,6 +1127,36 @@ __NOTE__: This is a convenience method that calls `HTTPClient.enableDebugLogging
11151127
Another option is to set the System property `-Djdk.httpclient.HttpClient.log=all`. However, this second option does not log bodies.
11161128
<!-- End Debugging [debug] -->
11171129

1130+
<!-- Start Jackson Configuration [jackson] -->
1131+
## Jackson Configuration
1132+
1133+
The SDK ships with a pre-configured Jackson [`ObjectMapper`][jackson-databind] accessible via
1134+
`JSON.getMapper()`. It is set up with type modules, strict deserializers, and the feature flags
1135+
needed for full SDK compatibility (including ISO-8601 `OffsetDateTime` serialization):
1136+
1137+
```java
1138+
import com.gusto.embedded_api.utils.JSON;
1139+
1140+
String json = JSON.getMapper().writeValueAsString(response);
1141+
```
1142+
1143+
To compose with your own `ObjectMapper`, register the provided `GustoEmbeddedJacksonModule`, which
1144+
bundles all the same modules and feature flags as a single plug-and-play module:
1145+
1146+
```java
1147+
import com.gusto.embedded_api.utils.GustoEmbeddedJacksonModule;
1148+
import com.fasterxml.jackson.databind.ObjectMapper;
1149+
1150+
ObjectMapper myMapper = new ObjectMapper()
1151+
.registerModule(new GustoEmbeddedJacksonModule());
1152+
1153+
String json = myMapper.writeValueAsString(response);
1154+
```
1155+
1156+
[jackson-databind]: https://github.com/FasterXML/jackson-databind
1157+
[jackson-jsr310]: https://github.com/FasterXML/jackson-modules-java8/tree/master/datetime
1158+
<!-- End Jackson Configuration [jackson] -->
1159+
11181160
<!-- Placeholder for Future Speakeasy SDK Sections -->
11191161

11201162
# Development

gusto_embedded/RELEASES.md

Lines changed: 9 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -70,4 +70,12 @@ Based on:
7070
- OpenAPI Doc
7171
- Speakeasy CLI 1.692.0 (2.797.1) https://github.com/speakeasy-api/speakeasy
7272
### Generated
73-
- [java v0.3.1] gusto_embedded
73+
- [java v0.3.1] gusto_embedded
74+
75+
## 2026-03-08 00:26:45
76+
### Changes
77+
Based on:
78+
- OpenAPI Doc
79+
- Speakeasy CLI 1.749.0 (2.855.2) https://github.com/speakeasy-api/speakeasy
80+
### Generated
81+
- [java v0.3.2] gusto_embedded

0 commit comments

Comments
 (0)