From cb85a337c232e51726462722c09c26f02c96435d Mon Sep 17 00:00:00 2001 From: Gabriel Garcia Date: Thu, 25 Jun 2026 13:27:43 +0200 Subject: [PATCH 01/13] generate new endpoints --- src/client/client.gen.ts | 4 +- src/client/index.ts | 90 +- src/client/sdk.gen.ts | 8974 +++++++++++------------- src/client/types.gen.ts | 13799 +++++++++++++++++++------------------ 4 files changed, 11085 insertions(+), 11782 deletions(-) diff --git a/src/client/client.gen.ts b/src/client/client.gen.ts index 5f44e28fd..0e7e8e27a 100644 --- a/src/client/client.gen.ts +++ b/src/client/client.gen.ts @@ -20,6 +20,4 @@ export type CreateClientConfig = ( override?: Config, ) => Config & T>; -export const client = createClient( - createConfig({ baseUrl: 'https://gateway.remote.com/' }), -); +export const client = createClient(createConfig()); diff --git a/src/client/index.ts b/src/client/index.ts index 1febabe63..221d96ac2 100644 --- a/src/client/index.ts +++ b/src/client/index.ts @@ -5,6 +5,7 @@ export { deleteV1ContractorsEmploymentsEmploymentIdContractorCorSubscription, deleteV1IncentivesId, deleteV1IncentivesRecurringId, + deleteV1OnboardingEmploymentsEmploymentIdPreOnboardingRequirementsRequirementSlugAcknowledge, deleteV1WebhookCallbacksId, getV1BenefitOffers, getV1BenefitOffersCountrySummaries, @@ -108,8 +109,8 @@ export { getV1Offboardings, getV1OffboardingsEmploymentsEmploymentId, getV1OffboardingsId, - getV1OnboardingEmploymentsEmploymentIdPreOnboardingDocumentRequirements, getV1OnboardingEmploymentsEmploymentIdPreOnboardingDocumentsId, + getV1OnboardingEmploymentsEmploymentIdPreOnboardingRequirements, getV1PayItems, getV1PayrollCalendars, getV1PayrollCalendarsCycle, @@ -138,6 +139,12 @@ export { getV1TimesheetsId, getV1TravelLetterRequests, getV1TravelLetterRequestsId, + getV1WdGphPayDetail, + getV1WdGphPayDetailData, + getV1WdGphPayProcessingFeature, + getV1WdGphPayProgress, + getV1WdGphPaySummary, + getV1WdGphPayVariance, getV1WebhookEvents, getV1WorkAuthorizationRequests, getV1WorkAuthorizationRequestsId, @@ -172,6 +179,7 @@ export { patchV2EmploymentsEmploymentId, patchV2EmploymentsEmploymentId2, postAuthOauth2Token, + postAuthOauth2Token2, postV1BenefitRenewalRequestsBenefitRenewalRequestId, postV1BulkEmploymentJobs, postV1CancelOnboardingEmploymentId, @@ -215,8 +223,9 @@ export { postV1IncentivesRecurring, postV1MagicLink, postV1Offboardings, - postV1OnboardingEmploymentsEmploymentIdPreOnboardingDocuments, postV1OnboardingEmploymentsEmploymentIdPreOnboardingDocumentsIdSign, + postV1OnboardingEmploymentsEmploymentIdPreOnboardingRequirementsRequirementSlugAcknowledge, + postV1OnboardingEmploymentsEmploymentIdPreOnboardingRequirementsRequirementSlugDocuments, postV1PayItemsBulk, postV1ProbationCompletionLetter, postV1ProbationExtensions, @@ -237,6 +246,7 @@ export { postV1TimeoffTimeoffIdCancelRequestApprove, postV1TimeoffTimeoffIdCancelRequestDecline, postV1TimeoffTimeoffIdDecline, + postV1Timesheets, postV1TimesheetsTimesheetIdApprove, postV1TimesheetsTimesheetIdSendBack, postV1WebhookCallbacks, @@ -443,6 +453,7 @@ export type { CreateGeneralCustomFieldDefinitionParams, CreateOffboardingParams, CreateOneTimeIncentiveParams, + CreatePreOnboardingAcknowledgementResponse, CreatePreOnboardingDocumentResponse, CreatePricingPlanParams, CreatePricingPlanResponse, @@ -502,6 +513,11 @@ export type { DeleteV1IncentivesRecurringIdErrors, DeleteV1IncentivesRecurringIdResponse, DeleteV1IncentivesRecurringIdResponses, + DeleteV1OnboardingEmploymentsEmploymentIdPreOnboardingRequirementsRequirementSlugAcknowledgeData, + DeleteV1OnboardingEmploymentsEmploymentIdPreOnboardingRequirementsRequirementSlugAcknowledgeError, + DeleteV1OnboardingEmploymentsEmploymentIdPreOnboardingRequirementsRequirementSlugAcknowledgeErrors, + DeleteV1OnboardingEmploymentsEmploymentIdPreOnboardingRequirementsRequirementSlugAcknowledgeResponse, + DeleteV1OnboardingEmploymentsEmploymentIdPreOnboardingRequirementsRequirementSlugAcknowledgeResponses, DeleteV1WebhookCallbacksIdData, DeleteV1WebhookCallbacksIdError, DeleteV1WebhookCallbacksIdErrors, @@ -573,7 +589,6 @@ export type { ExpenseResponse, File, FileParams, - FindOrCreatePreOnboardingDocumentParams, ForbiddenResponse, GenericFile, GetV1BenefitOffersCountrySummariesData, @@ -1084,16 +1099,16 @@ export type { GetV1OffboardingsIdResponses, GetV1OffboardingsResponse, GetV1OffboardingsResponses, - GetV1OnboardingEmploymentsEmploymentIdPreOnboardingDocumentRequirementsData, - GetV1OnboardingEmploymentsEmploymentIdPreOnboardingDocumentRequirementsError, - GetV1OnboardingEmploymentsEmploymentIdPreOnboardingDocumentRequirementsErrors, - GetV1OnboardingEmploymentsEmploymentIdPreOnboardingDocumentRequirementsResponse, - GetV1OnboardingEmploymentsEmploymentIdPreOnboardingDocumentRequirementsResponses, GetV1OnboardingEmploymentsEmploymentIdPreOnboardingDocumentsIdData, GetV1OnboardingEmploymentsEmploymentIdPreOnboardingDocumentsIdError, GetV1OnboardingEmploymentsEmploymentIdPreOnboardingDocumentsIdErrors, GetV1OnboardingEmploymentsEmploymentIdPreOnboardingDocumentsIdResponse, GetV1OnboardingEmploymentsEmploymentIdPreOnboardingDocumentsIdResponses, + GetV1OnboardingEmploymentsEmploymentIdPreOnboardingRequirementsData, + GetV1OnboardingEmploymentsEmploymentIdPreOnboardingRequirementsError, + GetV1OnboardingEmploymentsEmploymentIdPreOnboardingRequirementsErrors, + GetV1OnboardingEmploymentsEmploymentIdPreOnboardingRequirementsResponse, + GetV1OnboardingEmploymentsEmploymentIdPreOnboardingRequirementsResponses, GetV1PayItemsData, GetV1PayItemsError, GetV1PayItemsErrors, @@ -1232,6 +1247,36 @@ export type { GetV1TravelLetterRequestsIdResponses, GetV1TravelLetterRequestsResponse, GetV1TravelLetterRequestsResponses, + GetV1WdGphPayDetailData, + GetV1WdGphPayDetailDataData, + GetV1WdGphPayDetailDataError, + GetV1WdGphPayDetailDataErrors, + GetV1WdGphPayDetailDataResponse, + GetV1WdGphPayDetailDataResponses, + GetV1WdGphPayDetailError, + GetV1WdGphPayDetailErrors, + GetV1WdGphPayDetailResponse, + GetV1WdGphPayDetailResponses, + GetV1WdGphPayProcessingFeatureData, + GetV1WdGphPayProcessingFeatureError, + GetV1WdGphPayProcessingFeatureErrors, + GetV1WdGphPayProcessingFeatureResponse, + GetV1WdGphPayProcessingFeatureResponses, + GetV1WdGphPayProgressData, + GetV1WdGphPayProgressError, + GetV1WdGphPayProgressErrors, + GetV1WdGphPayProgressResponse, + GetV1WdGphPayProgressResponses, + GetV1WdGphPaySummaryData, + GetV1WdGphPaySummaryError, + GetV1WdGphPaySummaryErrors, + GetV1WdGphPaySummaryResponse, + GetV1WdGphPaySummaryResponses, + GetV1WdGphPayVarianceData, + GetV1WdGphPayVarianceError, + GetV1WdGphPayVarianceErrors, + GetV1WdGphPayVarianceResponse, + GetV1WdGphPayVarianceResponses, GetV1WebhookEventsData, GetV1WebhookEventsError, GetV1WebhookEventsErrors, @@ -1295,7 +1340,7 @@ export type { IndexContractDocuments, IndexContractDocumentsResponse, IndexCorTerminationRequestsResponse, - IndexPreOnboardingDocumentRequirementsResponse, + IndexPreOnboardingRequirementsResponse, IntegrationsScimErrorResponse, IntegrationsScimGroup, IntegrationsScimGroupListResponse, @@ -1545,6 +1590,11 @@ export type { PayVarianceResponse, PeriodProperties, PersonalDetails, + PostAuthOauth2Token2Data, + PostAuthOauth2Token2Error, + PostAuthOauth2Token2Errors, + PostAuthOauth2Token2Response, + PostAuthOauth2Token2Responses, PostAuthOauth2TokenData, PostAuthOauth2TokenError, PostAuthOauth2TokenErrors, @@ -1765,16 +1815,21 @@ export type { PostV1OffboardingsErrors, PostV1OffboardingsResponse, PostV1OffboardingsResponses, - PostV1OnboardingEmploymentsEmploymentIdPreOnboardingDocumentsData, - PostV1OnboardingEmploymentsEmploymentIdPreOnboardingDocumentsError, - PostV1OnboardingEmploymentsEmploymentIdPreOnboardingDocumentsErrors, PostV1OnboardingEmploymentsEmploymentIdPreOnboardingDocumentsIdSignData, PostV1OnboardingEmploymentsEmploymentIdPreOnboardingDocumentsIdSignError, PostV1OnboardingEmploymentsEmploymentIdPreOnboardingDocumentsIdSignErrors, PostV1OnboardingEmploymentsEmploymentIdPreOnboardingDocumentsIdSignResponse, PostV1OnboardingEmploymentsEmploymentIdPreOnboardingDocumentsIdSignResponses, - PostV1OnboardingEmploymentsEmploymentIdPreOnboardingDocumentsResponse, - PostV1OnboardingEmploymentsEmploymentIdPreOnboardingDocumentsResponses, + PostV1OnboardingEmploymentsEmploymentIdPreOnboardingRequirementsRequirementSlugAcknowledgeData, + PostV1OnboardingEmploymentsEmploymentIdPreOnboardingRequirementsRequirementSlugAcknowledgeError, + PostV1OnboardingEmploymentsEmploymentIdPreOnboardingRequirementsRequirementSlugAcknowledgeErrors, + PostV1OnboardingEmploymentsEmploymentIdPreOnboardingRequirementsRequirementSlugAcknowledgeResponse, + PostV1OnboardingEmploymentsEmploymentIdPreOnboardingRequirementsRequirementSlugAcknowledgeResponses, + PostV1OnboardingEmploymentsEmploymentIdPreOnboardingRequirementsRequirementSlugDocumentsData, + PostV1OnboardingEmploymentsEmploymentIdPreOnboardingRequirementsRequirementSlugDocumentsError, + PostV1OnboardingEmploymentsEmploymentIdPreOnboardingRequirementsRequirementSlugDocumentsErrors, + PostV1OnboardingEmploymentsEmploymentIdPreOnboardingRequirementsRequirementSlugDocumentsResponse, + PostV1OnboardingEmploymentsEmploymentIdPreOnboardingRequirementsRequirementSlugDocumentsResponses, PostV1PayItemsBulkData, PostV1PayItemsBulkError, PostV1PayItemsBulkErrors, @@ -1874,6 +1929,11 @@ export type { PostV1TimeoffTimeoffIdDeclineErrors, PostV1TimeoffTimeoffIdDeclineResponse, PostV1TimeoffTimeoffIdDeclineResponses, + PostV1TimesheetsData, + PostV1TimesheetsError, + PostV1TimesheetsErrors, + PostV1TimesheetsResponse, + PostV1TimesheetsResponses, PostV1TimesheetsTimesheetIdApproveData, PostV1TimesheetsTimesheetIdApproveError, PostV1TimesheetsTimesheetIdApproveErrors, @@ -1899,7 +1959,7 @@ export type { PostV2EmploymentsEmploymentIdEngagementAgreementDetailsErrors, PostV2EmploymentsEmploymentIdEngagementAgreementDetailsResponse, PostV2EmploymentsEmploymentIdEngagementAgreementDetailsResponses, - PreOnboardingDocumentRequirement, + PreOnboardingRequirement, Price, PricingPlan, PricingPlanDetails, diff --git a/src/client/sdk.gen.ts b/src/client/sdk.gen.ts index 3d513df43..b599743ca 100644 --- a/src/client/sdk.gen.ts +++ b/src/client/sdk.gen.ts @@ -20,6 +20,9 @@ import type { DeleteV1IncentivesRecurringIdData, DeleteV1IncentivesRecurringIdErrors, DeleteV1IncentivesRecurringIdResponses, + DeleteV1OnboardingEmploymentsEmploymentIdPreOnboardingRequirementsRequirementSlugAcknowledgeData, + DeleteV1OnboardingEmploymentsEmploymentIdPreOnboardingRequirementsRequirementSlugAcknowledgeErrors, + DeleteV1OnboardingEmploymentsEmploymentIdPreOnboardingRequirementsRequirementSlugAcknowledgeResponses, DeleteV1WebhookCallbacksIdData, DeleteV1WebhookCallbacksIdErrors, DeleteV1WebhookCallbacksIdResponses, @@ -92,9 +95,6 @@ import type { GetV1CompaniesSchemaData, GetV1CompaniesSchemaErrors, GetV1CompaniesSchemaResponses, - GetV1CompanyCompanyIdCostCenterAllocationsData, - GetV1CompanyCompanyIdCostCenterAllocationsErrors, - GetV1CompanyCompanyIdCostCenterAllocationsResponses, GetV1CompanyCurrenciesData, GetV1CompanyCurrenciesErrors, GetV1CompanyCurrenciesResponses, @@ -248,9 +248,6 @@ import type { GetV1EmploymentsEmploymentIdContractDocumentsData, GetV1EmploymentsEmploymentIdContractDocumentsErrors, GetV1EmploymentsEmploymentIdContractDocumentsResponses, - GetV1EmploymentsEmploymentIdCostCenterAllocationsData, - GetV1EmploymentsEmploymentIdCostCenterAllocationsErrors, - GetV1EmploymentsEmploymentIdCostCenterAllocationsResponses, GetV1EmploymentsEmploymentIdCustomFieldsData, GetV1EmploymentsEmploymentIdCustomFieldsErrors, GetV1EmploymentsEmploymentIdCustomFieldsResponses, @@ -328,12 +325,12 @@ import type { GetV1OffboardingsIdErrors, GetV1OffboardingsIdResponses, GetV1OffboardingsResponses, - GetV1OnboardingEmploymentsEmploymentIdPreOnboardingDocumentRequirementsData, - GetV1OnboardingEmploymentsEmploymentIdPreOnboardingDocumentRequirementsErrors, - GetV1OnboardingEmploymentsEmploymentIdPreOnboardingDocumentRequirementsResponses, GetV1OnboardingEmploymentsEmploymentIdPreOnboardingDocumentsIdData, GetV1OnboardingEmploymentsEmploymentIdPreOnboardingDocumentsIdErrors, GetV1OnboardingEmploymentsEmploymentIdPreOnboardingDocumentsIdResponses, + GetV1OnboardingEmploymentsEmploymentIdPreOnboardingRequirementsData, + GetV1OnboardingEmploymentsEmploymentIdPreOnboardingRequirementsErrors, + GetV1OnboardingEmploymentsEmploymentIdPreOnboardingRequirementsResponses, GetV1PayItemsData, GetV1PayItemsErrors, GetV1PayItemsResponses, @@ -354,6 +351,9 @@ import type { GetV1PayrollRunsResponses, GetV1PayslipsData, GetV1PayslipsErrors, + GetV1PayslipsIdData, + GetV1PayslipsIdErrors, + GetV1PayslipsIdResponses, GetV1PayslipsPayslipIdPdfData, GetV1PayslipsPayslipIdPdfErrors, GetV1PayslipsPayslipIdPdfResponses, @@ -417,6 +417,24 @@ import type { GetV1TravelLetterRequestsIdErrors, GetV1TravelLetterRequestsIdResponses, GetV1TravelLetterRequestsResponses, + GetV1WdGphPayDetailData, + GetV1WdGphPayDetailDataData, + GetV1WdGphPayDetailDataErrors, + GetV1WdGphPayDetailDataResponses, + GetV1WdGphPayDetailErrors, + GetV1WdGphPayDetailResponses, + GetV1WdGphPayProcessingFeatureData, + GetV1WdGphPayProcessingFeatureErrors, + GetV1WdGphPayProcessingFeatureResponses, + GetV1WdGphPayProgressData, + GetV1WdGphPayProgressErrors, + GetV1WdGphPayProgressResponses, + GetV1WdGphPaySummaryData, + GetV1WdGphPaySummaryErrors, + GetV1WdGphPaySummaryResponses, + GetV1WdGphPayVarianceData, + GetV1WdGphPayVarianceErrors, + GetV1WdGphPayVarianceResponses, GetV1WebhookEventsData, GetV1WebhookEventsErrors, GetV1WebhookEventsResponses, @@ -513,6 +531,9 @@ import type { PatchV2EmploymentsEmploymentIdData, PatchV2EmploymentsEmploymentIdErrors, PatchV2EmploymentsEmploymentIdResponses, + PostAuthOauth2Token2Data, + PostAuthOauth2Token2Errors, + PostAuthOauth2Token2Responses, PostAuthOauth2TokenData, PostAuthOauth2TokenErrors, PostAuthOauth2TokenResponses, @@ -645,12 +666,15 @@ import type { PostV1OffboardingsData, PostV1OffboardingsErrors, PostV1OffboardingsResponses, - PostV1OnboardingEmploymentsEmploymentIdPreOnboardingDocumentsData, - PostV1OnboardingEmploymentsEmploymentIdPreOnboardingDocumentsErrors, PostV1OnboardingEmploymentsEmploymentIdPreOnboardingDocumentsIdSignData, PostV1OnboardingEmploymentsEmploymentIdPreOnboardingDocumentsIdSignErrors, PostV1OnboardingEmploymentsEmploymentIdPreOnboardingDocumentsIdSignResponses, - PostV1OnboardingEmploymentsEmploymentIdPreOnboardingDocumentsResponses, + PostV1OnboardingEmploymentsEmploymentIdPreOnboardingRequirementsRequirementSlugAcknowledgeData, + PostV1OnboardingEmploymentsEmploymentIdPreOnboardingRequirementsRequirementSlugAcknowledgeErrors, + PostV1OnboardingEmploymentsEmploymentIdPreOnboardingRequirementsRequirementSlugAcknowledgeResponses, + PostV1OnboardingEmploymentsEmploymentIdPreOnboardingRequirementsRequirementSlugDocumentsData, + PostV1OnboardingEmploymentsEmploymentIdPreOnboardingRequirementsRequirementSlugDocumentsErrors, + PostV1OnboardingEmploymentsEmploymentIdPreOnboardingRequirementsRequirementSlugDocumentsResponses, PostV1PayItemsBulkData, PostV1PayItemsBulkErrors, PostV1PayItemsBulkResponses, @@ -711,6 +735,9 @@ import type { PostV1TimeoffTimeoffIdDeclineData, PostV1TimeoffTimeoffIdDeclineErrors, PostV1TimeoffTimeoffIdDeclineResponses, + PostV1TimesheetsData, + PostV1TimesheetsErrors, + PostV1TimesheetsResponses, PostV1TimesheetsTimesheetIdApproveData, PostV1TimesheetsTimesheetIdApproveErrors, PostV1TimesheetsTimesheetIdApproveResponses, @@ -822,100 +849,124 @@ export type Options< }; /** - * List Offboarding + * List a company's pending actions + * + * Given a company ID, returns the company-level actions still pending for the company — for + * example company verification and Remote Payments setup. The list can be empty or contain one + * or more actions; `setup_remote_payments` is returned once per legal entity that needs it. * - * Lists Offboarding requests. * * ## Scopes * * | Category | Read only Scope | Write only Scope (read access implicit) | * |---|---|---| - * | Manage employments (`employments`) | View offboarding requests (`offboarding:read`) | Manage offboarding (`offboarding:write`) | + * | Manage company resources (`company_admin`) | View companies (`company:read`) | Manage companies (`company:write`) | * */ -export const getV1Offboardings = ( - options?: Options, +export const getV1CompaniesCompanyIdActions = < + ThrowOnError extends boolean = false, +>( + options: Options, ) => - (options?.client ?? client).get< - GetV1OffboardingsResponses, - GetV1OffboardingsErrors, + (options.client ?? client).get< + GetV1CompaniesCompanyIdActionsResponses, + GetV1CompaniesCompanyIdActionsErrors, ThrowOnError - >({ - security: [ - { scheme: 'bearer', type: 'http' }, - { scheme: 'bearer', type: 'http' }, - ], - url: '/v1/offboardings', - ...options, - }); + >({ url: '/v1/companies/{company_id}/actions', ...options }); /** - * Create Offboarding + * Update administrative details + * + * Updates employment's administrative details. + * + * This endpoint requires and returns country-specific data. The exact required and returned fields will + * vary depending on which country the employment is in. To see the list of parameters for each country, + * see the **Show form schema** endpoint under the [Countries](#tag/Countries) category. + * + * Please note that the compliance requirements for each country are subject to change according to local + * laws. Given its continual updates, using Remote's [json-schema-form](https://developer.remote.com/docs/how-json-schemas-work) should be considered in order to avoid + * compliance issues and to have the latest version of a country requirements. + * + * If you are using this endpoint to build an integration, make sure you are dynamically collecting or + * displaying the latest parameters for each country by querying the _"Show form schema"_ endpoint. + * + * For more information on JSON Schemas, see the **How JSON Schemas work** documentation. + * + * To learn how you can dynamically generate forms to display in your UI, see the documentation for + * the [json-schema-form](https://developer.remote.com/docs/how-json-schemas-form) tool. * - * Creates an Offboarding request * * * ## Scopes * * | Category | Read only Scope | Write only Scope (read access implicit) | * |---|---|---| - * | Manage employments (`employments`) | - | Manage offboarding (`offboarding:write`) | + * | Manage employments (`employments`) | - | Manage employments (`employment:write`) | * */ -export const postV1Offboardings = ( - options?: Options, +export const putV2EmploymentsEmploymentIdAdministrativeDetails = < + ThrowOnError extends boolean = false, +>( + options: Options< + PutV2EmploymentsEmploymentIdAdministrativeDetailsData, + ThrowOnError + >, ) => - (options?.client ?? client).post< - PostV1OffboardingsResponses, - PostV1OffboardingsErrors, + (options.client ?? client).put< + PutV2EmploymentsEmploymentIdAdministrativeDetailsResponses, + PutV2EmploymentsEmploymentIdAdministrativeDetailsErrors, ThrowOnError >({ - security: [ - { scheme: 'bearer', type: 'http' }, - { scheme: 'bearer', type: 'http' }, - ], - url: '/v1/offboardings', + url: '/v2/employments/{employment_id}/administrative_details', ...options, headers: { 'Content-Type': 'application/json', - ...options?.headers, + ...options.headers, }, }); /** - * List Offboardings (v2) - * - * Lists offboardings for a company. + * Get engagement agreement details * + * Returns the engagement agreement details for an employment. * * ## Scopes * * | Category | Read only Scope | Write only Scope (read access implicit) | * |---|---|---| - * | Manage employments (`employments`) | View offboarding requests (`offboarding:read`) | Manage offboarding (`offboarding:write`) | + * | Manage employments (`employments`) | View employments (`employment:read`) | Manage employments (`employment:write`) | * */ -export const getV2Offboardings = ( - options?: Options, +export const getV1EmploymentsEmploymentIdEngagementAgreementDetails = < + ThrowOnError extends boolean = false, +>( + options: Options< + GetV1EmploymentsEmploymentIdEngagementAgreementDetailsData, + ThrowOnError + >, ) => - (options?.client ?? client).get< - GetV2OffboardingsResponses, - GetV2OffboardingsErrors, + (options.client ?? client).get< + GetV1EmploymentsEmploymentIdEngagementAgreementDetailsResponses, + GetV1EmploymentsEmploymentIdEngagementAgreementDetailsErrors, ThrowOnError >({ - security: [ - { scheme: 'bearer', type: 'http' }, - { scheme: 'bearer', type: 'http' }, - ], - url: '/v2/offboardings', + url: '/v1/employments/{employment_id}/engagement-agreement-details', ...options, }); /** - * Update pricing plan details + * Upsert engagement agreement details + * + * Creates or updates the engagement agreement details for an employment. + * + * This endpoint requires country-specific data. The exact required fields will vary depending on + * which country the employment is in. To see the list of parameters for each country, see the + * **Show form schema** endpoint under the [Countries](#tag/Countries) category. + * + * Please note that compliance requirements for each country are subject to change according to local laws. + * Using Remote's [json-schema-form](https://developer.remote.com/docs/how-json-schemas-work) is recommended + * to avoid compliance issues and to have the latest version of a country's requirements. * - * Updates the pricing plan for an employment. The frequency determines how often Remote bills the - * employer for management fees. Annual billing typically offers a discount. * * * ## Scopes @@ -925,24 +976,20 @@ export const getV2Offboardings = ( * | Manage employments (`employments`) | - | Manage employments (`employment:write`) | * */ -export const putV2EmploymentsEmploymentIdPricingPlanDetails = < +export const postV1EmploymentsEmploymentIdEngagementAgreementDetails = < ThrowOnError extends boolean = false, >( options: Options< - PutV2EmploymentsEmploymentIdPricingPlanDetailsData, + PostV1EmploymentsEmploymentIdEngagementAgreementDetailsData, ThrowOnError >, ) => - (options.client ?? client).put< - PutV2EmploymentsEmploymentIdPricingPlanDetailsResponses, - PutV2EmploymentsEmploymentIdPricingPlanDetailsErrors, + (options.client ?? client).post< + PostV1EmploymentsEmploymentIdEngagementAgreementDetailsResponses, + PostV1EmploymentsEmploymentIdEngagementAgreementDetailsErrors, ThrowOnError >({ - security: [ - { scheme: 'bearer', type: 'http' }, - { scheme: 'bearer', type: 'http' }, - ], - url: '/v2/employments/{employment_id}/pricing-plan-details', + url: '/v1/employments/{employment_id}/engagement-agreement-details', ...options, headers: { 'Content-Type': 'application/json', @@ -951,130 +998,126 @@ export const putV2EmploymentsEmploymentIdPricingPlanDetails = < }); /** - * Show timesheet + * Convert currency using dynamic rates * - * Shows a timesheet by its ID. + * Convert currency using the rates Remote applies during employment creation and invoicing. * * ## Scopes * * | Category | Read only Scope | Write only Scope (read access implicit) | * |---|---|---| - * | Manage timeoffs (`time_and_attendance`) | View timesheets (`timesheet:read`) | Manage timesheets (`timesheet:write`) | + * | Manage company resources (`company_admin`) | Convert currencies (`convert_currency:read`) | - | * */ -export const getV1TimesheetsId = ( - options: Options, +export const postV1CurrencyConverterEffective2 = < + ThrowOnError extends boolean = false, +>( + options: Options, ) => - (options.client ?? client).get< - GetV1TimesheetsIdResponses, - GetV1TimesheetsIdErrors, + (options.client ?? client).post< + PostV1CurrencyConverterEffective2Responses, + PostV1CurrencyConverterEffective2Errors, ThrowOnError >({ - security: [ - { scheme: 'bearer', type: 'http' }, - { scheme: 'bearer', type: 'http' }, - ], - url: '/v1/timesheets/{id}', + url: '/v1/currency-converter', ...options, + headers: { + 'Content-Type': 'application/json', + ...options.headers, + }, }); /** - * Cancel onboarding + * Submit employee federal taxes * - * Cancel onboarding. + * Submits the authenticated employee's US federal tax (W-4) details. * - * Requirements for the cancellation to succeed: + * Available for US Global Payroll employees once they reach the + * post-enrollment state. Calls made before then return a 404. + * + * This endpoint requires country-specific data. Query the + * [Show form schema](#tag/Countries/operation/get_show_form_country) endpoint with `global_payroll_federal_taxes` + * as the form name to discover the schema for a given country. * - * * Employment has to be in `invited`, `created`, `created_awaiting_reserve`, `created_reserve_paid`, `pre_hire` status - * * Employee must not have signed the employment contract * * * ## Scopes * * | Category | Read only Scope | Write only Scope (read access implicit) | * |---|---|---| - * | Manage employments (`employments`) | - | Manage onboarding (`onboarding:write`) | + * | Manage employments (`employments`) | - | Manage personal details (`personal_detail:write`) | * */ -export const postV1CancelOnboardingEmploymentId = < - ThrowOnError extends boolean = false, ->( - options: Options, +export const putV1EmployeeFederalTaxes = ( + options?: Options, ) => - (options.client ?? client).post< - PostV1CancelOnboardingEmploymentIdResponses, - PostV1CancelOnboardingEmploymentIdErrors, + (options?.client ?? client).put< + PutV1EmployeeFederalTaxesResponses, + PutV1EmployeeFederalTaxesErrors, ThrowOnError >({ - security: [ - { scheme: 'bearer', type: 'http' }, - { scheme: 'bearer', type: 'http' }, - ], - url: '/v1/cancel-onboarding/{employment_id}', + url: '/v1/employee/federal-taxes', ...options, + headers: { + 'Content-Type': 'application/json', + ...options?.headers, + }, }); /** - * Show form schema + * List contractor subscriptions * - * Returns the json schema of the `contract_amendment` form for a specific employment. - * This endpoint requires a company access token, as forms are dependent on certain - * properties of companies and their current employments. + * Endpoint that can be used to list contractor subscriptions. * * * ## Scopes * * | Category | Read only Scope | Write only Scope (read access implicit) | * |---|---|---| - * | Manage employments (`employments`) | View contract amendments (`contract_amendment:read`) | Manage contract amendments (`contract_amendment:write`) | + * | Manage employments (`employments`) | View employments (`employment:read`) | Manage employments (`employment:write`) | * */ -export const getV1ContractAmendmentsSchema = < +export const getV1ContractorsEmploymentsEmploymentIdContractorSubscriptions = < ThrowOnError extends boolean = false, >( - options: Options, + options: Options< + GetV1ContractorsEmploymentsEmploymentIdContractorSubscriptionsData, + ThrowOnError + >, ) => (options.client ?? client).get< - GetV1ContractAmendmentsSchemaResponses, - GetV1ContractAmendmentsSchemaErrors, + GetV1ContractorsEmploymentsEmploymentIdContractorSubscriptionsResponses, + GetV1ContractorsEmploymentsEmploymentIdContractorSubscriptionsErrors, ThrowOnError >({ - security: [ - { scheme: 'bearer', type: 'http' }, - { scheme: 'bearer', type: 'http' }, - ], - url: '/v1/contract-amendments/schema', + url: '/v1/contractors/employments/{employment_id}/contractor-subscriptions', ...options, }); /** - * Bulk Create Pay Items - * - * Bulk creates pay items for employments. Supports up to 500 items per request. - * Integration-specific fields (shift code, currency, pay amount, etc.) go in the `provider_data` object. - * Only Global Payroll employments are supported. Non-GP employments are returned as `employment_not_global_payroll`. + * Convert currency using flat rates * + * Convert currency using FX rates used in Remote’s estimation tools. + * These rates are not guaranteed to match final onboarding or contract rates. * * ## Scopes * * | Category | Read only Scope | Write only Scope (read access implicit) | * |---|---|---| - * | Manage payroll runs (`payroll`) | - | Manage pay items (`pay_item:write`) | + * | Manage company resources (`company_admin`) | Convert currencies (`convert_currency:read`) | - | * */ -export const postV1PayItemsBulk = ( - options: Options, +export const postV1CurrencyConverterRaw = < + ThrowOnError extends boolean = false, +>( + options: Options, ) => (options.client ?? client).post< - PostV1PayItemsBulkResponses, - PostV1PayItemsBulkErrors, + PostV1CurrencyConverterRawResponses, + PostV1CurrencyConverterRawErrors, ThrowOnError >({ - security: [ - { scheme: 'bearer', type: 'http' }, - { scheme: 'bearer', type: 'http' }, - ], - url: '/v1/pay-items/bulk', + url: '/v1/currency-converter/raw', ...options, headers: { 'Content-Type': 'application/json', @@ -1083,82 +1126,50 @@ export const postV1PayItemsBulk = ( }); /** - * Show Offboarding (v2) - * - * Returns a single offboarding by its ID. + * List Incentives * + * Lists all Incentives of a company * * ## Scopes * * | Category | Read only Scope | Write only Scope (read access implicit) | * |---|---|---| - * | Manage employments (`employments`) | View offboarding requests (`offboarding:read`) | Manage offboarding (`offboarding:write`) | + * | Manage expenses (`employment_payments`) | View incentives (`incentive:read`) | Manage incentives (`incentive:write`) | * */ -export const getV2OffboardingsId = ( - options: Options, +export const getV1Incentives = ( + options: Options, ) => (options.client ?? client).get< - GetV2OffboardingsIdResponses, - GetV2OffboardingsIdErrors, + GetV1IncentivesResponses, + GetV1IncentivesErrors, ThrowOnError - >({ - security: [ - { scheme: 'bearer', type: 'http' }, - { scheme: 'bearer', type: 'http' }, - ], - url: '/v2/offboardings/{id}', - ...options, - }); + >({ url: '/v1/incentives', ...options }); /** - * Update address details - * - * Updates employment's address details. - * - * This endpoint requires and returns country-specific data. The exact required and returned fields will - * vary depending on which country the employment is in. To see the list of parameters for each country, - * see the **Show form schema** endpoint under the [Countries](#tag/Countries) category. - * - * Please note that the compliance requirements for each country are subject to change according to local - * laws. Given its continual updates, using Remote's [json-schema-form](https://developer.remote.com/docs/how-json-schemas-work) should be considered in order to avoid - * compliance issues and to have the latest version of a country requirements. - * - * If you are using this endpoint to build an integration, make sure you are dynamically collecting or - * displaying the latest parameters for each country by querying the _"Show form schema"_ endpoint. - * - * For more information on JSON Schemas, see the **How JSON Schemas work** documentation. + * Create Incentive * - * To learn how you can dynamically generate forms to display in your UI, see the documentation for - * the [json-schema-form](https://developer.remote.com/docs/how-json-schemas-form) tool. + * Creates an Incentive. * + * Incentives use the currency of the employment specified provided in the `employment_id` field. * * * ## Scopes * * | Category | Read only Scope | Write only Scope (read access implicit) | * |---|---|---| - * | Manage employments (`employments`) | - | Manage employments (`employment:write`) | + * | Manage expenses (`employment_payments`) | - | Manage incentives (`incentive:write`) | * */ -export const putV2EmploymentsEmploymentIdAddressDetails = < - ThrowOnError extends boolean = false, ->( - options: Options< - PutV2EmploymentsEmploymentIdAddressDetailsData, - ThrowOnError - >, +export const postV1Incentives = ( + options: Options, ) => - (options.client ?? client).put< - PutV2EmploymentsEmploymentIdAddressDetailsResponses, - PutV2EmploymentsEmploymentIdAddressDetailsErrors, + (options.client ?? client).post< + PostV1IncentivesResponses, + PostV1IncentivesErrors, ThrowOnError >({ - security: [ - { scheme: 'bearer', type: 'http' }, - { scheme: 'bearer', type: 'http' }, - ], - url: '/v2/employments/{employment_id}/address-details', + url: '/v1/incentives', ...options, headers: { 'Content-Type': 'application/json', @@ -1167,67 +1178,118 @@ export const putV2EmploymentsEmploymentIdAddressDetails = < }); /** - * List pricing plans + * List Benefit Offers By Employment * - * List all pricing plans for a company. - * Currently the endpoint only returns the pricing plans for the EOR monthly product and the contractor products (Standard, Plus and COR). + * List benefit offers by employment. * * * ## Scopes * * | Category | Read only Scope | Write only Scope (read access implicit) | * |---|---|---| - * | Manage companies (`company_management`) | View pricing plans (`pricing_plan:read`) | Manage pricing plans (`pricing_plan:write`) | + * | Manage company resources (`company_admin`) | View benefit offers (`benefit_offer:read`) | Manage benefit offers (`benefit_offer:write`) | * */ -export const getV1CompaniesCompanyIdPricingPlans = < +export const getV1BenefitOffers = ( + options: Options, +) => + (options.client ?? client).get< + GetV1BenefitOffersResponses, + GetV1BenefitOffersErrors, + ThrowOnError + >({ url: '/v1/benefit-offers', ...options }); + +/** + * Complete onboarding + * + * Completes the employee onboarding. When all tasks are completed, the employee is marked as in `review` status + * + * @deprecated + */ +export const postV1Ready = ( + options: Options, +) => + (options.client ?? client).post< + PostV1ReadyResponses, + PostV1ReadyErrors, + ThrowOnError + >({ + security: [{ scheme: 'bearer', type: 'http' }], + url: '/v1/ready', + ...options, + headers: { + 'Content-Type': 'application/json', + ...options.headers, + }, + }); + +/** + * Creates a cost estimation of employments + */ +export const postV1CostCalculatorEstimation = < ThrowOnError extends boolean = false, >( - options: Options, + options: Options, ) => - (options.client ?? client).get< - GetV1CompaniesCompanyIdPricingPlansResponses, - GetV1CompaniesCompanyIdPricingPlansErrors, + (options.client ?? client).post< + PostV1CostCalculatorEstimationResponses, + PostV1CostCalculatorEstimationErrors, ThrowOnError >({ - security: [ - { scheme: 'bearer', type: 'http' }, - { scheme: 'bearer', type: 'http' }, - ], - url: '/v1/companies/{company_id}/pricing-plans', + url: '/v1/cost-calculator/estimation', ...options, + headers: { + 'Content-Type': 'application/json', + ...options.headers, + }, }); /** - * Create a pricing plan for a company + * List Recurring Incentive * - * Create a pricing plan for a company, in order to do that we have 2 ways: + * List all Recurring Incentives of a company. * - * 1. Create a pricing plan from a partner template - * 2. Create a pricing plan from a product price * - * The pricing plan is always created in the company's desired currency. + * ## Scopes + * + * | Category | Read only Scope | Write only Scope (read access implicit) | + * |---|---|---| + * | Manage expenses (`employment_payments`) | View incentives (`incentive:read`) | Manage incentives (`incentive:write`) | + * + */ +export const getV1IncentivesRecurring = ( + options: Options, +) => + (options.client ?? client).get< + GetV1IncentivesRecurringResponses, + GetV1IncentivesRecurringErrors, + ThrowOnError + >({ url: '/v1/incentives/recurring', ...options }); + +/** + * Create Recurring Incentive + * + * Create a Recurring Incentive, that is, a monthly paid incentive. + * + * Incentives use the currency of the employment specified provided in the `employment_id` field. * * * ## Scopes * * | Category | Read only Scope | Write only Scope (read access implicit) | * |---|---|---| - * | Manage companies (`company_management`) | - | Manage pricing plans (`pricing_plan:write`) | + * | Manage expenses (`employment_payments`) | - | Manage incentives (`incentive:write`) | * */ -export const postV1CompaniesCompanyIdPricingPlans = < - ThrowOnError extends boolean = false, ->( - options: Options, +export const postV1IncentivesRecurring = ( + options: Options, ) => (options.client ?? client).post< - PostV1CompaniesCompanyIdPricingPlansResponses, - PostV1CompaniesCompanyIdPricingPlansErrors, + PostV1IncentivesRecurringResponses, + PostV1IncentivesRecurringErrors, ThrowOnError >({ - security: [{ scheme: 'bearer', type: 'http' }], - url: '/v1/companies/{company_id}/pricing-plans', + url: '/v1/incentives/recurring', ...options, headers: { 'Content-Type': 'application/json', @@ -1236,474 +1298,340 @@ export const postV1CompaniesCompanyIdPricingPlans = < }); /** - * Show probation completion letter + * List timesheets * - * Show a single probation completion letter. + * Lists all timesheets. * * ## Scopes * * | Category | Read only Scope | Write only Scope (read access implicit) | * |---|---|---| - * | Manage employment documents (`employment_documents`) | View probation documents (`probation_document:read`) | Manage probation documents (`probation_document:write`) | + * | Manage timeoffs (`time_and_attendance`) | View timesheets (`timesheet:read`) | Manage timesheets (`timesheet:write`) | * */ -export const getV1ProbationCompletionLetterId = < - ThrowOnError extends boolean = false, ->( - options: Options, +export const getV1Timesheets = ( + options?: Options, ) => - (options.client ?? client).get< - GetV1ProbationCompletionLetterIdResponses, - GetV1ProbationCompletionLetterIdErrors, + (options?.client ?? client).get< + GetV1TimesheetsResponses, + GetV1TimesheetsErrors, ThrowOnError - >({ - security: [ - { scheme: 'bearer', type: 'http' }, - { scheme: 'bearer', type: 'http' }, - ], - url: '/v1/probation-completion-letter/{id}', - ...options, - }); + >({ url: '/v1/timesheets', ...options }); /** - * Show Contractor Invoice + * Create timesheet * - * Shows a single Contractor Invoice record. + * Creates a new timesheet. * * ## Scopes * * | Category | Read only Scope | Write only Scope (read access implicit) | * |---|---|---| - * | Manage invoices (`invoices`) | View invoices (`invoices:read`) | Manage invoices (`invoices:write`) | + * | Manage timeoffs (`time_and_attendance`) | - | Manage timesheets (`timesheet:write`) | * */ -export const getV1ContractorInvoicesId = ( - options: Options, +export const postV1Timesheets = ( + options?: Options, ) => - (options.client ?? client).get< - GetV1ContractorInvoicesIdResponses, - GetV1ContractorInvoicesIdErrors, + (options?.client ?? client).post< + PostV1TimesheetsResponses, + PostV1TimesheetsErrors, ThrowOnError >({ - security: [ - { scheme: 'bearer', type: 'http' }, - { scheme: 'bearer', type: 'http' }, - ], - url: '/v1/contractor-invoices/{id}', + url: '/v1/timesheets', ...options, + headers: { + 'Content-Type': 'application/json', + ...options?.headers, + }, }); /** - * Convert currency using flat rates + * Approve timesheet * - * Convert currency using FX rates used in Remote’s estimation tools. - * These rates are not guaranteed to match final onboarding or contract rates. + * Approves the given timesheet. * * ## Scopes * * | Category | Read only Scope | Write only Scope (read access implicit) | * |---|---|---| - * | Manage company resources (`company_admin`) | Convert currencies (`convert_currency:read`) | - | + * | Manage timeoffs (`time_and_attendance`) | - | Manage timesheets (`timesheet:write`) | * */ -export const postV1CurrencyConverterRaw = < +export const postV1TimesheetsTimesheetIdApprove = < ThrowOnError extends boolean = false, >( - options: Options, + options: Options, ) => (options.client ?? client).post< - PostV1CurrencyConverterRawResponses, - PostV1CurrencyConverterRawErrors, + PostV1TimesheetsTimesheetIdApproveResponses, + PostV1TimesheetsTimesheetIdApproveErrors, ThrowOnError - >({ - security: [ - { scheme: 'bearer', type: 'http' }, - { scheme: 'bearer', type: 'http' }, - { scheme: 'bearer', type: 'http' }, - ], - url: '/v1/currency-converter/raw', - ...options, - headers: { - 'Content-Type': 'application/json', - ...options.headers, - }, - }); + >({ url: '/v1/timesheets/{timesheet_id}/approve', ...options }); /** - * Show contractor contract details + * Show probation completion letter * - * Returns the contract details JSON Schema for contractors given a country + * Show a single probation completion letter. * * ## Scopes * * | Category | Read only Scope | Write only Scope (read access implicit) | * |---|---|---| - * | Manage company resources (`company_admin`) | View forms (`form:read`) | - | + * | Manage employment documents (`employment_documents`) | View probation documents (`probation_document:read`) | Manage probation documents (`probation_document:write`) | * */ -export const getV1CountriesCountryCodeContractorContractDetails = < +export const getV1ProbationCompletionLetterId = < ThrowOnError extends boolean = false, >( - options: Options< - GetV1CountriesCountryCodeContractorContractDetailsData, - ThrowOnError - >, + options: Options, ) => (options.client ?? client).get< - GetV1CountriesCountryCodeContractorContractDetailsResponses, - GetV1CountriesCountryCodeContractorContractDetailsErrors, + GetV1ProbationCompletionLetterIdResponses, + GetV1ProbationCompletionLetterIdErrors, ThrowOnError - >({ - security: [ - { scheme: 'bearer', type: 'http' }, - { scheme: 'bearer', type: 'http' }, - ], - url: '/v1/countries/{country_code}/contractor-contract-details', - ...options, - }); + >({ url: '/v1/probation-completion-letter/{id}', ...options }); /** - * List incentives for the authenticated employee + * Show the current SSO Configuration * - * Returns all incentives for the authenticated employee. + * Shows the current SSO Configuration for the company. * * ## Scopes * * | Category | Read only Scope | Write only Scope (read access implicit) | * |---|---|---| - * | Manage expenses (`employment_payments`) | View incentives (`incentive:read`) | Manage incentives (`incentive:write`) | + * | Manage company resources (`company_admin`) | View SSO configuration (`sso_configuration:read`) | Manage SSO (`sso_configuration:write`) | * */ -export const getV1EmployeeIncentives = ( - options?: Options, +export const getV1SsoConfiguration = ( + options?: Options, ) => (options?.client ?? client).get< - GetV1EmployeeIncentivesResponses, - GetV1EmployeeIncentivesErrors, + GetV1SsoConfigurationResponses, + GetV1SsoConfigurationErrors, ThrowOnError - >({ - security: [{ scheme: 'bearer', type: 'http' }], - url: '/v1/employee/incentives', - ...options, - }); + >({ url: '/v1/sso-configuration', ...options }); /** - * List employments - * - * Lists all employments, except for the deleted ones. - * - * This endpoint requires and returns country-specific data. The exact required and returned fields will - * vary depending on which country the employment is in. To see the list of parameters for each country, - * see the **Show form schema** endpoint under the [Countries](#tag/Countries) category. - * - * Please note that the compliance requirements for each country are subject to change according to local - * laws. Given its continual updates, using Remote's [json-schema-form](https://developer.remote.com/docs/how-json-schemas-work) should be considered in order to avoid - * compliance issues and to have the latest version of a country requirements. - * - * If you are using this endpoint to build an integration, make sure you are dynamically collecting or - * displaying the latest parameters for each country by querying the _"Show form schema"_ endpoint. + * Create the SSO Configuration * - * For more information on JSON Schemas, see the **How JSON Schemas work** documentation. + * Creates the SSO Configuration for the company. * - * To learn how you can dynamically generate forms to display in your UI, see the documentation for - * the [json-schema-form](https://developer.remote.com/docs/how-json-schemas-work) tool. + * ## Scopes * + * | Category | Read only Scope | Write only Scope (read access implicit) | + * |---|---|---| + * | Manage company resources (`company_admin`) | - | Manage SSO (`sso_configuration:write`) | * */ -export const getV1Employments = ( - options: Options, +export const postV1SsoConfiguration = ( + options: Options, ) => - (options.client ?? client).get< - GetV1EmploymentsResponses, - GetV1EmploymentsErrors, + (options.client ?? client).post< + PostV1SsoConfigurationResponses, + PostV1SsoConfigurationErrors, ThrowOnError >({ - security: [{ scheme: 'bearer', type: 'http' }], - url: '/v1/employments', + url: '/v1/sso-configuration', ...options, + headers: { + 'Content-Type': 'application/json', + ...options.headers, + }, }); /** - * Create employment - * - * Creates an employment. We support creating employees and contractors. - * - * ## Global Payroll Employees - * - * To create a Global Payroll employee, pass `global_payroll_employee` as the `type` parameter, - * and provide the id of the specific legal entity that the employee will be engaged by and billed to as the `engaged_by_legal_entity_id` parameter. - * - * ## HRIS Employees - * - * To create a HRIS employee, pass `hris` as the `type` parameter. - * - * This endpoint requires and returns country-specific data. The exact required and returned fields will - * vary depending on which country the employment is in. To see the list of parameters for each country, - * see the **Show form schema** endpoint under the [Countries](#tag/Countries) category. - * - * Please note that the compliance requirements for each country are subject to change according to local - * laws. Given its continual updates, using Remote's [json-schema-form](https://developer.remote.com/docs/how-json-schemas-work) should be considered in order to avoid - * compliance issues and to have the latest version of a country requirements. - * - * If you are using this endpoint to build an integration, make sure you are dynamically collecting or - * displaying the latest parameters for each country by querying the _"Show form schema"_ endpoint. - * - * For more information on JSON Schemas, see the **How JSON Schemas work** documentation. - * - * To learn how you can dynamically generate forms to display in your UI, see the documentation for - * the [json-schema-form](https://developer.remote.com/docs/how-json-schemas-work) tool. - * + * List Offboarding * + * Lists Offboarding requests. * * ## Scopes * * | Category | Read only Scope | Write only Scope (read access implicit) | * |---|---|---| - * | Manage employments (`employments`) | - | Manage employments (`employment:write`) | + * | Manage employments (`employments`) | View offboarding requests (`offboarding:read`) | Manage offboarding (`offboarding:write`) | * */ -export const postV1Employments = ( - options: Options, +export const getV1Offboardings = ( + options?: Options, ) => - (options.client ?? client).post< - PostV1EmploymentsResponses, - PostV1EmploymentsErrors, + (options?.client ?? client).get< + GetV1OffboardingsResponses, + GetV1OffboardingsErrors, ThrowOnError - >({ - security: [ - { scheme: 'bearer', type: 'http' }, - { scheme: 'bearer', type: 'http' }, - ], - url: '/v1/employments', - ...options, - headers: { - 'Content-Type': 'application/json', - ...options.headers, - }, - }); - -/** - * Get Onboarding Reserves Status for Employment - * - * Returns the onboarding reserves status for a specific employment. - * - * The status is the same as the credit risk status but takes the onboarding reserves policies into account. - * - * - * ## Scopes - * - * | Category | Read only Scope | Write only Scope (read access implicit) | - * |---|---|---| - * | Manage employments (`employments`) | View employments (`employment:read`) | Manage employments (`employment:write`) | - * - */ -export const getV1CompaniesCompanyIdEmploymentsEmploymentIdOnboardingReservesStatus = - ( - options: Options< - GetV1CompaniesCompanyIdEmploymentsEmploymentIdOnboardingReservesStatusData, - ThrowOnError - >, - ) => - (options.client ?? client).get< - GetV1CompaniesCompanyIdEmploymentsEmploymentIdOnboardingReservesStatusResponses, - GetV1CompaniesCompanyIdEmploymentsEmploymentIdOnboardingReservesStatusErrors, - ThrowOnError - >({ - security: [ - { scheme: 'bearer', type: 'http' }, - { scheme: 'bearer', type: 'http' }, - ], - url: '/v1/companies/{company_id}/employments/{employment_id}/onboarding-reserves-status', - ...options, - }); + >({ url: '/v1/offboardings', ...options }); /** - * Show employee bank account - * - * Returns the authenticated employee's bank account details. - * - * This endpoint requires and returns country-specific data. The exact fields vary depending on which - * country the authenticated employee's employment is in. Query the - * [Show form schema](#tag/Countries/operation/get_show_form_country) endpoint with `bank_account_details` - * as the form name to discover the schema for a given country. + * Create Offboarding * + * Creates an Offboarding request * * * ## Scopes * * | Category | Read only Scope | Write only Scope (read access implicit) | * |---|---|---| - * | Manage employments (`employments`) | View bank accounts (`bank_account:read`) | Manage bank accounts (`bank_account:write`) | + * | Manage employments (`employments`) | - | Manage offboarding (`offboarding:write`) | * */ -export const getV1EmployeeBankAccount = ( - options?: Options, +export const postV1Offboardings = ( + options?: Options, ) => - (options?.client ?? client).get< - GetV1EmployeeBankAccountResponses, - GetV1EmployeeBankAccountErrors, + (options?.client ?? client).post< + PostV1OffboardingsResponses, + PostV1OffboardingsErrors, ThrowOnError >({ - security: [{ scheme: 'bearer', type: 'http' }], - url: '/v1/employee/bank-account', + url: '/v1/offboardings', ...options, + headers: { + 'Content-Type': 'application/json', + ...options?.headers, + }, }); /** - * Update employee bank account - * - * Upserts the authenticated employee's bank account details. - * - * This endpoint requires and returns country-specific data. The exact fields vary depending on which - * country the authenticated employee's employment is in. Query the - * [Show form schema](#tag/Countries/operation/get_show_form_country) endpoint with `bank_account_details` - * as the form name to discover the schema for a given country. + * Create a contract document for a contractor * + * Create a contract document for a contractor. * * * ## Scopes * * | Category | Read only Scope | Write only Scope (read access implicit) | * |---|---|---| - * | Manage employments (`employments`) | - | Manage bank accounts (`bank_account:write`) | + * | Manage employment documents (`employment_documents`) | - | Manage documents (`document:write`) | * */ -export const putV1EmployeeBankAccount = ( - options?: Options, +export const postV1ContractorsEmploymentsEmploymentIdContractDocuments = < + ThrowOnError extends boolean = false, +>( + options: Options< + PostV1ContractorsEmploymentsEmploymentIdContractDocumentsData, + ThrowOnError + >, ) => - (options?.client ?? client).put< - PutV1EmployeeBankAccountResponses, - PutV1EmployeeBankAccountErrors, + (options.client ?? client).post< + PostV1ContractorsEmploymentsEmploymentIdContractDocumentsResponses, + PostV1ContractorsEmploymentsEmploymentIdContractDocumentsErrors, ThrowOnError >({ - security: [{ scheme: 'bearer', type: 'http' }], - url: '/v1/employee/bank-account', + url: '/v1/contractors/employments/{employment_id}/contract-documents', ...options, headers: { 'Content-Type': 'application/json', - ...options?.headers, + ...options.headers, }, }); /** - * Get Help Center Article + * Update federal taxes + * + * Updates employment's federal taxes. + * + * Requirements to update federal taxes successfully: + * * Employment should be Global Payroll + * * Employment should be in the post-enrollment state + * * Employment should belong to USA + * + * This endpoint requires and returns country-specific data. The exact required and returned fields will + * vary depending on which country the employment is in. To see the list of parameters for each country, + * see the **Show form schema** endpoint under the [Countries](#tag/Countries) category. + * + * Please note that the compliance requirements for each country are subject to change according to local + * laws. Given its continual updates, using Remote's [json-schema-form](https://developer.remote.com/docs/how-json-schemas-work) should be considered in order to avoid + * compliance issues and to have the latest version of a country requirements. + * + * If you are using this endpoint to build an integration, make sure you are dynamically collecting or + * displaying the latest parameters for each country by querying the _"Show form schema"_ endpoint. + * + * For more information on JSON Schemas, see the **How JSON Schemas work** documentation. + * + * To learn how you can dynamically generate forms to display in your UI, see the documentation for + * the [json-schema-form](https://developer.remote.com/docs/how-json-schemas-work) tool. + * * - * Get a help center article by its ID * * ## Scopes * * | Category | Read only Scope | Write only Scope (read access implicit) | * |---|---|---| - * | Manage company resources (`company_admin`) | View help articles (`help_center_article:read`) | - | + * | Manage employments (`employments`) | - | Manage employments (`employment:write`) | * */ -export const getV1HelpCenterArticlesId = ( - options: Options, +export const putV1EmploymentsEmploymentIdFederalTaxes = < + ThrowOnError extends boolean = false, +>( + options: Options, ) => - (options.client ?? client).get< - GetV1HelpCenterArticlesIdResponses, - GetV1HelpCenterArticlesIdErrors, + (options.client ?? client).put< + PutV1EmploymentsEmploymentIdFederalTaxesResponses, + PutV1EmploymentsEmploymentIdFederalTaxesErrors, ThrowOnError >({ - security: [ - { scheme: 'bearer', type: 'http' }, - { scheme: 'bearer', type: 'http' }, - ], - url: '/v1/help-center-articles/{id}', + url: '/v1/employments/{employment_id}/federal-taxes', ...options, + headers: { + 'Content-Type': 'application/json', + ...options.headers, + }, }); /** - * Get user by ID via SCIM v2.0 + * List pricing plans * - * Retrieves a single user for the authenticated company by user ID - */ -export const getV1ScimV2UsersId = ( - options: Options, -) => - (options.client ?? client).get< - GetV1ScimV2UsersIdResponses, - GetV1ScimV2UsersIdErrors, - ThrowOnError - >({ - security: [{ scheme: 'bearer', type: 'http' }], - url: '/v1/scim/v2/Users/{id}', - ...options, - }); - -/** - * Get engagement agreement details + * List all pricing plans for a company. + * Currently the endpoint only returns the pricing plans for the EOR monthly product and the contractor products (Standard, Plus and COR). * - * Returns the engagement agreement details for an employment. * * ## Scopes * * | Category | Read only Scope | Write only Scope (read access implicit) | * |---|---|---| - * | Manage employments (`employments`) | View employments (`employment:read`) | Manage employments (`employment:write`) | + * | Manage companies (`company_management`) | View pricing plans (`pricing_plan:read`) | Manage pricing plans (`pricing_plan:write`) | * */ -export const getV2EmploymentsEmploymentIdEngagementAgreementDetails = < +export const getV1CompaniesCompanyIdPricingPlans = < ThrowOnError extends boolean = false, >( - options: Options< - GetV2EmploymentsEmploymentIdEngagementAgreementDetailsData, - ThrowOnError - >, + options: Options, ) => (options.client ?? client).get< - GetV2EmploymentsEmploymentIdEngagementAgreementDetailsResponses, - GetV2EmploymentsEmploymentIdEngagementAgreementDetailsErrors, + GetV1CompaniesCompanyIdPricingPlansResponses, + GetV1CompaniesCompanyIdPricingPlansErrors, ThrowOnError - >({ - security: [ - { scheme: 'bearer', type: 'http' }, - { scheme: 'bearer', type: 'http' }, - ], - url: '/v2/employments/{employment_id}/engagement-agreement-details', - ...options, - }); + >({ url: '/v1/companies/{company_id}/pricing-plans', ...options }); /** - * Upsert engagement agreement details - * - * Creates or updates the engagement agreement details for an employment. + * Create a pricing plan for a company * - * This endpoint requires country-specific data. The exact required fields will vary depending on - * which country the employment is in. To see the list of parameters for each country, see the - * **Show form schema** endpoint under the [Countries](#tag/Countries) category. + * Create a pricing plan for a company, in order to do that we have 2 ways: * - * Please note that compliance requirements for each country are subject to change according to local laws. - * Using Remote's [json-schema-form](https://developer.remote.com/docs/how-json-schemas-work) is recommended - * to avoid compliance issues and to have the latest version of a country's requirements. + * 1. Create a pricing plan from a partner template + * 2. Create a pricing plan from a product price * + * The pricing plan is always created in the company's desired currency. * * * ## Scopes * * | Category | Read only Scope | Write only Scope (read access implicit) | * |---|---|---| - * | Manage employments (`employments`) | - | Manage employments (`employment:write`) | + * | Manage companies (`company_management`) | - | Manage pricing plans (`pricing_plan:write`) | * */ -export const postV2EmploymentsEmploymentIdEngagementAgreementDetails = < +export const postV1CompaniesCompanyIdPricingPlans = < ThrowOnError extends boolean = false, >( - options: Options< - PostV2EmploymentsEmploymentIdEngagementAgreementDetailsData, - ThrowOnError - >, + options: Options, ) => (options.client ?? client).post< - PostV2EmploymentsEmploymentIdEngagementAgreementDetailsResponses, - PostV2EmploymentsEmploymentIdEngagementAgreementDetailsErrors, + PostV1CompaniesCompanyIdPricingPlansResponses, + PostV1CompaniesCompanyIdPricingPlansErrors, ThrowOnError >({ - security: [ - { scheme: 'bearer', type: 'http' }, - { scheme: 'bearer', type: 'http' }, - ], - url: '/v2/employments/{employment_id}/engagement-agreement-details', + url: '/v1/companies/{company_id}/pricing-plans', ...options, headers: { 'Content-Type': 'application/json', @@ -1712,133 +1640,145 @@ export const postV2EmploymentsEmploymentIdEngagementAgreementDetails = < }); /** - * Download a document for the employee + * List Offboardings for Employment + * + * Lists Offboarding requests for a specific employment. * * ## Scopes * * | Category | Read only Scope | Write only Scope (read access implicit) | * |---|---|---| - * | Manage employment documents (`employment_documents`) | View documents (`document:read`) | Manage documents (`document:write`) | + * | Manage employments (`employments`) | View offboarding requests (`offboarding:read`) | Manage offboarding (`offboarding:write`) | * */ -export const getV1EmployeeDocumentsId = ( - options: Options, +export const getV1OffboardingsEmploymentsEmploymentId = < + ThrowOnError extends boolean = false, +>( + options: Options, ) => (options.client ?? client).get< - GetV1EmployeeDocumentsIdResponses, - GetV1EmployeeDocumentsIdErrors, + GetV1OffboardingsEmploymentsEmploymentIdResponses, + GetV1OffboardingsEmploymentsEmploymentIdErrors, ThrowOnError - >({ - security: [{ scheme: 'bearer', type: 'http' }], - url: '/v1/employee/documents/{id}', - ...options, - }); + >({ url: '/v1/offboardings/employments/{employment_id}', ...options }); /** - * List Contractor Invoices + * Show employee address + * + * Returns the authenticated employee's residential address. + * + * The employment is derived from the access token's subject — there is no + * employment id in the path. + * + * This endpoint requires country-specific data. The exact required fields vary depending on which + * country the authenticated employee's employment is in. Query the + * [Show form schema](#tag/Countries/operation/get_show_form_country) endpoint with `address_details` + * as the form name to discover the schema for a given country. + * * - * Lists Contractor Invoice records. * * ## Scopes * * | Category | Read only Scope | Write only Scope (read access implicit) | * |---|---|---| - * | Manage invoices (`invoices`) | View invoices (`invoices:read`) | Manage invoices (`invoices:write`) | + * | Manage employments (`employments`) | View addresses (`address:read`) | Manage addresses (`address:write`) | * */ -export const getV1ContractorInvoices = ( - options?: Options, +export const getV1EmployeeAddress = ( + options?: Options, ) => (options?.client ?? client).get< - GetV1ContractorInvoicesResponses, - GetV1ContractorInvoicesErrors, + GetV1EmployeeAddressResponses, + GetV1EmployeeAddressErrors, ThrowOnError - >({ - security: [ - { scheme: 'bearer', type: 'http' }, - { scheme: 'bearer', type: 'http' }, - ], - url: '/v1/contractor-invoices', - ...options, - }); + >({ url: '/v1/employee/address', ...options }); /** - * Report SDK errors + * Update employee address * - * Receives error telemetry from the frontend SDK. - * Errors are logged to observability backend for monitoring and debugging. + * Updates the authenticated employee's residential address. + * + * The employment is derived from the access token's subject — there is no + * employment id in the path. The token must be an employee-role token + * (typically obtained via the OAuth2 assertion grant with subject + * `urn:remote-api:employee:employment:`). + * + * This endpoint requires country-specific data. The exact required fields vary depending on which + * country the authenticated employee's employment is in. Query the + * [Show form schema](#tag/Countries/operation/get_show_form_country) endpoint with `address_details` + * as the form name to discover the schema for a given country. + * + * + * + * ## Scopes + * + * | Category | Read only Scope | Write only Scope (read access implicit) | + * |---|---|---| + * | Manage employments (`employments`) | - | Manage addresses (`address:write`) | * */ -export const postV1SdkTelemetryErrors = ( - options: Options, +export const putV1EmployeeAddress = ( + options?: Options, ) => - (options.client ?? client).post< - PostV1SdkTelemetryErrorsResponses, - PostV1SdkTelemetryErrorsErrors, + (options?.client ?? client).put< + PutV1EmployeeAddressResponses, + PutV1EmployeeAddressErrors, ThrowOnError >({ - security: [ - { scheme: 'bearer', type: 'http' }, - { scheme: 'bearer', type: 'http' }, - ], - url: '/v1/sdk/telemetry-errors', + url: '/v1/employee/address', ...options, headers: { 'Content-Type': 'application/json', - ...options.headers, + ...options?.headers, }, }); /** - * Show the SSO Configuration Details + * Update federal taxes + * + * Updates employment's federal taxes. + * + * Requirements to update federal taxes successfully: + * * Employment should be Global Payroll + * * Employment should be in the post-enrollment state + * * Employment should belong to USA + * + * This endpoint requires and returns country-specific data. The exact required and returned fields will + * vary depending on which country the employment is in. To see the list of parameters for each country, + * see the **Show form schema** endpoint under the [Countries](#tag/Countries) category. + * + * Please note that the compliance requirements for each country are subject to change according to local + * laws. Given its continual updates, using Remote's [json-schema-form](https://developer.remote.com/docs/how-json-schemas-work) should be considered in order to avoid + * compliance issues and to have the latest version of a country requirements. + * + * If you are using this endpoint to build an integration, make sure you are dynamically collecting or + * displaying the latest parameters for each country by querying the _"Show form schema"_ endpoint. + * + * For more information on JSON Schemas, see the **How JSON Schemas work** documentation. + * + * To learn how you can dynamically generate forms to display in your UI, see the documentation for + * the [json-schema-form](https://developer.remote.com/docs/how-json-schemas-work) tool. + * * - * Shows the SSO Configuration details for the company. * * ## Scopes * * | Category | Read only Scope | Write only Scope (read access implicit) | * |---|---|---| - * | Manage company resources (`company_admin`) | - | Manage SSO (`sso_configuration:write`) | + * | Manage employments (`employments`) | - | Manage employments (`employment:write`) | * */ -export const getV1SsoConfigurationDetails = < - ThrowOnError extends boolean = false, ->( - options?: Options, -) => - (options?.client ?? client).get< - GetV1SsoConfigurationDetailsResponses, - GetV1SsoConfigurationDetailsErrors, - ThrowOnError - >({ - security: [ - { scheme: 'bearer', type: 'http' }, - { scheme: 'bearer', type: 'http' }, - ], - url: '/v1/sso-configuration/details', - ...options, - }); - -/** - * Creates a cost estimation of employments - */ -export const postV1CostCalculatorEstimation = < +export const putV2EmploymentsEmploymentIdFederalTaxes = < ThrowOnError extends boolean = false, >( - options: Options, + options: Options, ) => - (options.client ?? client).post< - PostV1CostCalculatorEstimationResponses, - PostV1CostCalculatorEstimationErrors, + (options.client ?? client).put< + PutV2EmploymentsEmploymentIdFederalTaxesResponses, + PutV2EmploymentsEmploymentIdFederalTaxesErrors, ThrowOnError >({ - security: [ - { scheme: 'bearer', type: 'http' }, - { scheme: 'bearer', type: 'http' }, - { scheme: 'bearer', type: 'http' }, - { scheme: 'bearer', type: 'http' }, - ], - url: '/v1/cost-calculator/estimation', + url: '/v2/employments/{employment_id}/federal-taxes', ...options, headers: { 'Content-Type': 'application/json', @@ -1847,75 +1787,91 @@ export const postV1CostCalculatorEstimation = < }); /** - * Show form schema - * - * Returns the json schema of the requested company form. - * Currently only supports the `address_details` form. + * List travel letter requests * + * List travel letter requests. * * ## Scopes * * | Category | Read only Scope | Write only Scope (read access implicit) | * |---|---|---| - * | Manage company resources (`company_admin`) | View companies (`company:read`) | Manage companies (`company:write`) | + * | Manage employment documents (`employment_documents`) | View travel letters (`travel_letter:read`) | Manage travel letters (`travel_letter:write`) | * */ -export const getV1CompaniesSchema = ( - options: Options, +export const getV1TravelLetterRequests = ( + options?: Options, ) => - (options.client ?? client).get< - GetV1CompaniesSchemaResponses, - GetV1CompaniesSchemaErrors, + (options?.client ?? client).get< + GetV1TravelLetterRequestsResponses, + GetV1TravelLetterRequestsErrors, ThrowOnError - >({ - security: [{ scheme: 'bearer', type: 'http' }], - url: '/v1/companies/schema', - ...options, - }); + >({ url: '/v1/travel-letter-requests', ...options }); /** - * Get employment benefit offers + * Get engagement agreement details + * + * Returns the engagement agreement details for an employment. * * ## Scopes * * | Category | Read only Scope | Write only Scope (read access implicit) | * |---|---|---| - * | Manage company resources (`company_admin`) | View benefit offers (`benefit_offer:read`) | Manage benefit offers (`benefit_offer:write`) | + * | Manage employments (`employments`) | View employments (`employment:read`) | Manage employments (`employment:write`) | * */ -export const getV1EmploymentsEmploymentIdBenefitOffers = < +export const getV2EmploymentsEmploymentIdEngagementAgreementDetails = < ThrowOnError extends boolean = false, >( - options: Options, + options: Options< + GetV2EmploymentsEmploymentIdEngagementAgreementDetailsData, + ThrowOnError + >, ) => (options.client ?? client).get< - GetV1EmploymentsEmploymentIdBenefitOffersResponses, - GetV1EmploymentsEmploymentIdBenefitOffersErrors, + GetV2EmploymentsEmploymentIdEngagementAgreementDetailsResponses, + GetV2EmploymentsEmploymentIdEngagementAgreementDetailsErrors, ThrowOnError >({ - security: [ - { scheme: 'bearer', type: 'http' }, - { scheme: 'bearer', type: 'http' }, - ], - url: '/v1/employments/{employment_id}/benefit-offers', + url: '/v2/employments/{employment_id}/engagement-agreement-details', ...options, }); /** - * Upserts employment benefit offers + * Upsert engagement agreement details + * + * Creates or updates the engagement agreement details for an employment. + * + * This endpoint requires country-specific data. The exact required fields will vary depending on + * which country the employment is in. To see the list of parameters for each country, see the + * **Show form schema** endpoint under the [Countries](#tag/Countries) category. + * + * Please note that compliance requirements for each country are subject to change according to local laws. + * Using Remote's [json-schema-form](https://developer.remote.com/docs/how-json-schemas-work) is recommended + * to avoid compliance issues and to have the latest version of a country's requirements. + * + * + * + * ## Scopes + * + * | Category | Read only Scope | Write only Scope (read access implicit) | + * |---|---|---| + * | Manage employments (`employments`) | - | Manage employments (`employment:write`) | + * */ -export const putV1EmploymentsEmploymentIdBenefitOffers = < +export const postV2EmploymentsEmploymentIdEngagementAgreementDetails = < ThrowOnError extends boolean = false, >( - options: Options, + options: Options< + PostV2EmploymentsEmploymentIdEngagementAgreementDetailsData, + ThrowOnError + >, ) => - (options.client ?? client).put< - PutV1EmploymentsEmploymentIdBenefitOffersResponses, - PutV1EmploymentsEmploymentIdBenefitOffersErrors, + (options.client ?? client).post< + PostV2EmploymentsEmploymentIdEngagementAgreementDetailsResponses, + PostV2EmploymentsEmploymentIdEngagementAgreementDetailsErrors, ThrowOnError >({ - security: [{ scheme: 'bearer', type: 'http' }], - url: '/v1/employments/{employment_id}/benefit-offers', + url: '/v2/employments/{employment_id}/engagement-agreement-details', ...options, headers: { 'Content-Type': 'application/json', @@ -1924,40 +1880,27 @@ export const putV1EmploymentsEmploymentIdBenefitOffers = < }); /** - * Get Employment Profile - * - * Gets necessary information to perform the identity verification of an employee. - * - * - * ## Scopes - * - * | Category | Read only Scope | Write only Scope (read access implicit) | - * |---|---|---| - * | Manage employment documents (`employment_documents`) | View identity verification (`identity_verification:read`) | Manage identity verification (`identity_verification:write`) | + * Payroll processing summary API resource * + * API to retrieve summary data for processing pay groups */ -export const getV1IdentityVerificationEmploymentId = < - ThrowOnError extends boolean = false, ->( - options: Options, +export const getV1WdGphPaySummary = ( + options?: Options, ) => - (options.client ?? client).get< - GetV1IdentityVerificationEmploymentIdResponses, - GetV1IdentityVerificationEmploymentIdErrors, + (options?.client ?? client).get< + GetV1WdGphPaySummaryResponses, + GetV1WdGphPaySummaryErrors, ThrowOnError >({ - security: [ - { scheme: 'bearer', type: 'http' }, - { scheme: 'bearer', type: 'http' }, - ], - url: '/v1/identity-verification/{employment_id}', + security: [{ scheme: 'bearer', type: 'http' }], + url: '/v1/wd/gph/paySummary', ...options, }); /** - * List contractor subscriptions + * Show employment job * - * Endpoint that can be used to list contractor subscriptions. + * Shows an employment job details. * * * ## Scopes @@ -1967,244 +1910,198 @@ export const getV1IdentityVerificationEmploymentId = < * | Manage employments (`employments`) | View employments (`employment:read`) | Manage employments (`employment:write`) | * */ -export const getV1ContractorsEmploymentsEmploymentIdContractorSubscriptions = < +export const getV1EmploymentsEmploymentIdJob = < ThrowOnError extends boolean = false, >( - options: Options< - GetV1ContractorsEmploymentsEmploymentIdContractorSubscriptionsData, - ThrowOnError - >, + options: Options, ) => (options.client ?? client).get< - GetV1ContractorsEmploymentsEmploymentIdContractorSubscriptionsResponses, - GetV1ContractorsEmploymentsEmploymentIdContractorSubscriptionsErrors, + GetV1EmploymentsEmploymentIdJobResponses, + GetV1EmploymentsEmploymentIdJobErrors, ThrowOnError - >({ - security: [ - { scheme: 'bearer', type: 'http' }, - { scheme: 'bearer', type: 'http' }, - ], - url: '/v1/contractors/employments/{employment_id}/contractor-subscriptions', - ...options, - }); + >({ url: '/v1/employments/{employment_id}/job', ...options }); /** - * List approved payslip files for the authenticated employee + * Create bulk employment job * - * Returns a paginated list of payslip files belonging to the current employee. + * Creates a job to bulk-create employments for multiple employees at once. Each employee payload must match the employment schema for the selected country. * * ## Scopes * * | Category | Read only Scope | Write only Scope (read access implicit) | * |---|---|---| - * | Manage employment documents (`employment_documents`) | View payslips (`payslip:read`) | - | + * | Manage employments (`employments`) | - | Manage employments (`employment:write`) | * */ -export const getV1EmployeePayslips = ( - options?: Options, +export const postV1BulkEmploymentJobs = ( + options?: Options, ) => - (options?.client ?? client).get< - GetV1EmployeePayslipsResponses, - GetV1EmployeePayslipsErrors, + (options?.client ?? client).post< + PostV1BulkEmploymentJobsResponses, + PostV1BulkEmploymentJobsErrors, ThrowOnError >({ - security: [{ scheme: 'bearer', type: 'http' }], - url: '/v1/employee/payslips', + url: '/v1/bulk-employment-jobs', ...options, + headers: { + 'Content-Type': 'application/json', + ...options?.headers, + }, }); /** - * List contractor of record (COR) termination requests - * - * Lists Contractor of Record termination requests for your company, - * optionally filtered by employment and status. + * List Contract Amendment * + * List Contract Amendment requests. * * ## Scopes * * | Category | Read only Scope | Write only Scope (read access implicit) | * |---|---|---| - * | Manage employments (`employments`) | View employments (`employment:read`) | Manage employments (`employment:write`) | + * | Manage employments (`employments`) | View contract amendments (`contract_amendment:read`) | Manage contract amendments (`contract_amendment:write`) | * */ -export const getV1ContractorsCorTerminationRequests = < - ThrowOnError extends boolean = false, ->( - options?: Options, +export const getV1ContractAmendments = ( + options: Options, ) => - (options?.client ?? client).get< - GetV1ContractorsCorTerminationRequestsResponses, - GetV1ContractorsCorTerminationRequestsErrors, + (options.client ?? client).get< + GetV1ContractAmendmentsResponses, + GetV1ContractAmendmentsErrors, ThrowOnError - >({ - security: [ - { scheme: 'bearer', type: 'http' }, - { scheme: 'bearer', type: 'http' }, - ], - url: '/v1/contractors/cor-termination-requests', - ...options, - }); + >({ url: '/v1/contract-amendments', ...options }); /** - * List Webhook Events + * Create Contract Amendment + * + * Creates a Contract Amendment request. + * + * This endpoint requires and returns country-specific data. The exact required and returned fields will + * vary depending on which country the employment is in. To see the list of parameters for each country, + * see the **Show form schema** endpoint under the [Contract Amendments](#tag/Contract-Amendments) category. + * + * Please note that the compliance requirements for each country are subject to change according to local + * laws. Given its continual updates, using Remote's [json-schema-form](https://developer.remote.com/docs/how-json-schemas-work) should be considered in order to avoid + * compliance issues and to have the latest version of a country requirements. + * + * If you are using this endpoint to build an integration, make sure you are dynamically collecting or + * displaying the latest parameters for each country by querying the _"Show form schema"_ endpoint. + * + * For more information on JSON Schemas, see the **How JSON Schemas work** documentation. + * + * To learn how you can dynamically generate forms to display in your UI, see the documentation for + * the [json-schema-form](https://developer.remote.com/docs/how-json-schemas-work) tool. + * * - * List all webhook events * * ## Scopes * * | Category | Read only Scope | Write only Scope (read access implicit) | * |---|---|---| - * | Manage company resources (`company_admin`) | View webhooks (`webhook:read`) | Manage webhooks (`webhook:write`) | + * | Manage employments (`employments`) | - | Manage contract amendments (`contract_amendment:write`) | * */ -export const getV1WebhookEvents = ( - options?: Options, +export const postV1ContractAmendments = ( + options: Options, ) => - (options?.client ?? client).get< - GetV1WebhookEventsResponses, - GetV1WebhookEventsErrors, + (options.client ?? client).post< + PostV1ContractAmendmentsResponses, + PostV1ContractAmendmentsErrors, ThrowOnError >({ - security: [{ scheme: 'bearer', type: 'http' }], - url: '/v1/webhook-events', + url: '/v1/contract-amendments', ...options, + headers: { + 'Content-Type': 'application/json', + ...options.headers, + }, }); /** - * Pass KYB - * - * Pass KYB and credit risk for a company without the intervention of a Remote admin. + * Delete a Recurring Incentive * - * This endpoint is only available in Sandbox, otherwise it will respond with a 404. + * Delete a Recurring Incentive, that is, a monthly paid incentive. * - */ -export const postV1SandboxCompaniesCompanyIdBypassEligibilityChecks = < - ThrowOnError extends boolean = false, ->( - options: Options< - PostV1SandboxCompaniesCompanyIdBypassEligibilityChecksData, - ThrowOnError - >, -) => - (options.client ?? client).post< - PostV1SandboxCompaniesCompanyIdBypassEligibilityChecksResponses, - PostV1SandboxCompaniesCompanyIdBypassEligibilityChecksErrors, - ThrowOnError - >({ - security: [ - { scheme: 'bearer', type: 'http' }, - { scheme: 'bearer', type: 'http' }, - ], - url: '/v1/sandbox/companies/{company_id}/bypass-eligibility-checks', - ...options, - }); - -/** - * Approve risk reserve proof of payment + * Internally, Remote schedules upcoming incentives. As such, when you attempt to + * delete a recurring incentive, Remote will **ONLY** delete scheduled incentives + * with the `pending` status. * - * Approves a risk reserve proof of payment without the intervention of a Remote admin. + * Incentives payments that are already scheduled and cannot be deleted will be + * included in the response, in case you need to reference them. * - * Triggers an `employment.cor_hiring.proof_of_payment_accepted` webhook event. * - * This endpoint is only available in Sandbox, otherwise it will respond with a 404. + * ## Scopes * - */ -export const postV1SandboxEmploymentsEmploymentIdRiskReserveProofOfPaymentsApprove = - ( - options: Options< - PostV1SandboxEmploymentsEmploymentIdRiskReserveProofOfPaymentsApproveData, - ThrowOnError - >, - ) => - (options.client ?? client).post< - PostV1SandboxEmploymentsEmploymentIdRiskReserveProofOfPaymentsApproveResponses, - PostV1SandboxEmploymentsEmploymentIdRiskReserveProofOfPaymentsApproveErrors, - ThrowOnError - >({ - security: [ - { scheme: 'bearer', type: 'http' }, - { scheme: 'bearer', type: 'http' }, - ], - url: '/v1/sandbox/employments/{employment_id}/risk-reserve-proof-of-payments/approve', - ...options, - }); - -/** - * Get a mock JSON Schema + * | Category | Read only Scope | Write only Scope (read access implicit) | + * |---|---|---| + * | Manage expenses (`employment_payments`) | - | Manage incentives (`incentive:write`) | * - * Get a mock JSON Schema for testing purposes */ -export const getV1TestSchema = ( - options?: Options, +export const deleteV1IncentivesRecurringId = < + ThrowOnError extends boolean = false, +>( + options: Options, ) => - (options?.client ?? client).get< - GetV1TestSchemaResponses, - unknown, + (options.client ?? client).delete< + DeleteV1IncentivesRecurringIdResponses, + DeleteV1IncentivesRecurringIdErrors, ThrowOnError - >({ - security: [{ scheme: 'bearer', type: 'http' }], - url: '/v1/test-schema', - ...options, - }); + >({ url: '/v1/incentives/recurring/{id}', ...options }); /** - * List all holidays of a country + * Show Benefit Renewal Request * - * List all holidays of a country for a specific year. Optionally, it can be filtered by country subdivision. + * Show Benefit Renewal Request details. * * ## Scopes * * | Category | Read only Scope | Write only Scope (read access implicit) | * |---|---|---| - * | Manage company resources (`company_admin`) | View countries (`country:read`) | - | + * | Manage company resources (`company_admin`) | View benefit renewals (`benefit_renewal:read`) | Manage benefit renewals (`benefit_renewal:write`) | * */ -export const getV1CountriesCountryCodeHolidaysYear = < +export const getV1BenefitRenewalRequestsBenefitRenewalRequestId = < ThrowOnError extends boolean = false, >( - options: Options, + options: Options< + GetV1BenefitRenewalRequestsBenefitRenewalRequestIdData, + ThrowOnError + >, ) => (options.client ?? client).get< - GetV1CountriesCountryCodeHolidaysYearResponses, - GetV1CountriesCountryCodeHolidaysYearErrors, + GetV1BenefitRenewalRequestsBenefitRenewalRequestIdResponses, + GetV1BenefitRenewalRequestsBenefitRenewalRequestIdErrors, ThrowOnError >({ - security: [ - { scheme: 'bearer', type: 'http' }, - { scheme: 'bearer', type: 'http' }, - { scheme: 'bearer', type: 'http' }, - ], - url: '/v1/countries/{country_code}/holidays/{year}', + url: '/v1/benefit-renewal-requests/{benefit_renewal_request_id}', ...options, }); /** - * Cancel Time Off + * Updates a Benefit Renewal Request Response * - * Cancel a time off request that was already approved. + * Updates a Benefit Renewal Request with the given response. * * ## Scopes * * | Category | Read only Scope | Write only Scope (read access implicit) | * |---|---|---| - * | Manage timeoffs (`time_and_attendance`) | - | Manage timeoffs (`timeoff:write`) | + * | Manage company resources (`company_admin`) | - | Manage benefit renewals (`benefit_renewal:write`) | * */ -export const postV1TimeoffTimeoffIdCancel = < +export const postV1BenefitRenewalRequestsBenefitRenewalRequestId = < ThrowOnError extends boolean = false, >( - options: Options, + options: Options< + PostV1BenefitRenewalRequestsBenefitRenewalRequestIdData, + ThrowOnError + >, ) => (options.client ?? client).post< - PostV1TimeoffTimeoffIdCancelResponses, - PostV1TimeoffTimeoffIdCancelErrors, + PostV1BenefitRenewalRequestsBenefitRenewalRequestIdResponses, + PostV1BenefitRenewalRequestsBenefitRenewalRequestIdErrors, ThrowOnError >({ - security: [ - { scheme: 'bearer', type: 'http' }, - { scheme: 'bearer', type: 'http' }, - ], - url: '/v1/timeoff/{timeoff_id}/cancel', + url: '/v1/benefit-renewal-requests/{benefit_renewal_request_id}', ...options, headers: { 'Content-Type': 'application/json', @@ -2213,140 +2110,116 @@ export const postV1TimeoffTimeoffIdCancel = < }); /** - * Show employment job - * - * Shows an employment job details. + * List all holidays of a country * + * List all holidays of a country for a specific year. Optionally, it can be filtered by country subdivision. * * ## Scopes * * | Category | Read only Scope | Write only Scope (read access implicit) | * |---|---|---| - * | Manage employments (`employments`) | View employments (`employment:read`) | Manage employments (`employment:write`) | + * | Manage company resources (`company_admin`) | View countries (`country:read`) | - | * */ -export const getV1EmploymentsEmploymentIdJob = < +export const getV1CountriesCountryCodeHolidaysYear = < ThrowOnError extends boolean = false, >( - options: Options, + options: Options, ) => (options.client ?? client).get< - GetV1EmploymentsEmploymentIdJobResponses, - GetV1EmploymentsEmploymentIdJobErrors, + GetV1CountriesCountryCodeHolidaysYearResponses, + GetV1CountriesCountryCodeHolidaysYearErrors, ThrowOnError - >({ - security: [ - { scheme: 'bearer', type: 'http' }, - { scheme: 'bearer', type: 'http' }, - ], - url: '/v1/employments/{employment_id}/job', - ...options, - }); + >({ url: '/v1/countries/{country_code}/holidays/{year}', ...options }); /** - * List pricing plan partner templates - * - * List all pricing plan partner templates. + * List custom field value for an employment * + * Returns a list of custom field values for a given employment * * ## Scopes * * | Category | Read only Scope | Write only Scope (read access implicit) | * |---|---|---| - * | Manage companies (`company_management`) | View pricing plans (`pricing_plan:read`) | Manage pricing plans (`pricing_plan:write`) | + * | Manage employments (`employments`) | View custom field values (`custom_field_value:read`) | Manage custom field values (`custom_field_value:write`) | * */ -export const getV1PricingPlanPartnerTemplates = < +export const getV1EmploymentsEmploymentIdCustomFields = < ThrowOnError extends boolean = false, >( - options?: Options, + options: Options, ) => - (options?.client ?? client).get< - GetV1PricingPlanPartnerTemplatesResponses, - GetV1PricingPlanPartnerTemplatesErrors, + (options.client ?? client).get< + GetV1EmploymentsEmploymentIdCustomFieldsResponses, + GetV1EmploymentsEmploymentIdCustomFieldsErrors, ThrowOnError - >({ - security: [{ scheme: 'bearer', type: 'http' }], - url: '/v1/pricing-plan-partner-templates', - ...options, - }); + >({ url: '/v1/employments/{employment_id}/custom-fields', ...options }); /** - * List EOR Payroll Calendar + * Show timesheet * - * List all active payroll calendars for EOR. + * Shows a timesheet by its ID. * * ## Scopes * * | Category | Read only Scope | Write only Scope (read access implicit) | * |---|---|---| - * | Manage payroll runs (`payroll`) | View payroll calendars (`payroll_calendar:read`) | - | + * | Manage timeoffs (`time_and_attendance`) | View timesheets (`timesheet:read`) | Manage timesheets (`timesheet:write`) | * */ -export const getV1PayrollCalendars = ( - options?: Options, +export const getV1TimesheetsId = ( + options: Options, ) => - (options?.client ?? client).get< - GetV1PayrollCalendarsResponses, - GetV1PayrollCalendarsErrors, + (options.client ?? client).get< + GetV1TimesheetsIdResponses, + GetV1TimesheetsIdErrors, ThrowOnError - >({ - security: [{ scheme: 'bearer', type: 'http' }], - url: '/v1/payroll-calendars', - ...options, - }); + >({ url: '/v1/timesheets/{id}', ...options }); /** - * Update Time Off as Employee + * List Company Managers + * + * List all company managers of an integration. If filtered by the company_id param, + * it lists only company managers belonging to the specified company. * - * Updates a Time Off record as Employee * * ## Scopes * * | Category | Read only Scope | Write only Scope (read access implicit) | * |---|---|---| - * | Manage timeoffs (`time_and_attendance`) | - | Manage timeoffs (`timeoff:write`) | + * | Manage company resources (`company_admin`) | View managers (`company_manager:read`) | Manage managers (`company_manager:write`) | * */ -export const patchV1EmployeeTimeoffId2 = ( - options: Options, +export const getV1CompanyManagers = ( + options: Options, ) => - (options.client ?? client).patch< - PatchV1EmployeeTimeoffId2Responses, - PatchV1EmployeeTimeoffId2Errors, + (options.client ?? client).get< + GetV1CompanyManagersResponses, + GetV1CompanyManagersErrors, ThrowOnError - >({ - security: [{ scheme: 'bearer', type: 'http' }], - url: '/v1/employee/timeoff/{id}', - ...options, - headers: { - 'Content-Type': 'application/json', - ...options.headers, - }, - }); + >({ url: '/v1/company-managers', ...options }); /** - * Update Time Off as Employee + * Create and invite a Company Manager * - * Updates a Time Off record as Employee + * Create a Company Manager and sends the invitation email for signing in to the Remote Platform. * * ## Scopes * * | Category | Read only Scope | Write only Scope (read access implicit) | * |---|---|---| - * | Manage timeoffs (`time_and_attendance`) | - | Manage timeoffs (`timeoff:write`) | + * | Manage company resources (`company_admin`) | - | Manage managers (`company_manager:write`) | * */ -export const patchV1EmployeeTimeoffId = ( - options: Options, +export const postV1CompanyManagers = ( + options: Options, ) => - (options.client ?? client).put< - PatchV1EmployeeTimeoffIdResponses, - PatchV1EmployeeTimeoffIdErrors, + (options.client ?? client).post< + PostV1CompanyManagersResponses, + PostV1CompanyManagersErrors, ThrowOnError >({ - security: [{ scheme: 'bearer', type: 'http' }], - url: '/v1/employee/timeoff/{id}', + url: '/v1/company-managers', ...options, headers: { 'Content-Type': 'application/json', @@ -2355,62 +2228,52 @@ export const patchV1EmployeeTimeoffId = ( }); /** - * List Recurring Incentive - * - * List all Recurring Incentives of a company. + * List Employee Leave Policies Summary * + * List the leave policies summary (balances and entitlements) for the current employee * * ## Scopes * * | Category | Read only Scope | Write only Scope (read access implicit) | * |---|---|---| - * | Manage expenses (`employment_payments`) | View incentives (`incentive:read`) | Manage incentives (`incentive:write`) | + * | Manage timeoffs (`time_and_attendance`) | View timeoffs (`timeoff:read`) | Manage timeoffs (`timeoff:write`) | * */ -export const getV1IncentivesRecurring = ( - options: Options, +export const getV1EmployeeLeavePoliciesSummary = < + ThrowOnError extends boolean = false, +>( + options?: Options, ) => - (options.client ?? client).get< - GetV1IncentivesRecurringResponses, - GetV1IncentivesRecurringErrors, + (options?.client ?? client).get< + GetV1EmployeeLeavePoliciesSummaryResponses, + GetV1EmployeeLeavePoliciesSummaryErrors, ThrowOnError - >({ - security: [ - { scheme: 'bearer', type: 'http' }, - { scheme: 'bearer', type: 'http' }, - ], - url: '/v1/incentives/recurring', - ...options, - }); + >({ url: '/v1/employee/leave-policies/summary', ...options }); /** - * Create Recurring Incentive - * - * Create a Recurring Incentive, that is, a monthly paid incentive. + * Bulk Create Pay Items * - * Incentives use the currency of the employment specified provided in the `employment_id` field. + * Bulk creates pay items for employments. Supports up to 500 items per request. + * Integration-specific fields (shift code, currency, pay amount, etc.) go in the `provider_data` object. + * Only Global Payroll employments are supported. Non-GP employments are returned as `employment_not_global_payroll`. * * * ## Scopes * * | Category | Read only Scope | Write only Scope (read access implicit) | * |---|---|---| - * | Manage expenses (`employment_payments`) | - | Manage incentives (`incentive:write`) | + * | Manage payroll runs (`payroll`) | - | Manage pay items (`pay_item:write`) | * */ -export const postV1IncentivesRecurring = ( - options: Options, +export const postV1PayItemsBulk = ( + options: Options, ) => (options.client ?? client).post< - PostV1IncentivesRecurringResponses, - PostV1IncentivesRecurringErrors, + PostV1PayItemsBulkResponses, + PostV1PayItemsBulkErrors, ThrowOnError >({ - security: [ - { scheme: 'bearer', type: 'http' }, - { scheme: 'bearer', type: 'http' }, - ], - url: '/v1/incentives/recurring', + url: '/v1/pay-items/bulk', ...options, headers: { 'Content-Type': 'application/json', @@ -2419,362 +2282,239 @@ export const postV1IncentivesRecurring = ( }); /** - * Creates a Benefit Renewal Request + * Show travel letter request * - * Creates a Benefit Renewal Request for a specific Benefit Group. - * This endpoint is only available in Sandbox, otherwise it will respond with a 404. + * Show a single travel letter request. + * + * ## Scopes + * + * | Category | Read only Scope | Write only Scope (read access implicit) | + * |---|---|---| + * | Manage employment documents (`employment_documents`) | View travel letters (`travel_letter:read`) | Manage travel letters (`travel_letter:write`) | * */ -export const postV1SandboxBenefitRenewalRequests = < +export const getV1TravelLetterRequestsId = < ThrowOnError extends boolean = false, >( - options: Options, + options: Options, ) => - (options.client ?? client).post< - PostV1SandboxBenefitRenewalRequestsResponses, - PostV1SandboxBenefitRenewalRequestsErrors, + (options.client ?? client).get< + GetV1TravelLetterRequestsIdResponses, + GetV1TravelLetterRequestsIdErrors, ThrowOnError - >({ - security: [ - { scheme: 'bearer', type: 'http' }, - { scheme: 'bearer', type: 'http' }, - ], - url: '/v1/sandbox/benefit-renewal-requests', - ...options, - headers: { - 'Content-Type': 'application/json', - ...options.headers, - }, - }); + >({ url: '/v1/travel-letter-requests/{id}', ...options }); /** - * Return a base64 encoded version of the contract document + * Updates a travel letter request + * + * Updates a travel letter request * * ## Scopes * * | Category | Read only Scope | Write only Scope (read access implicit) | * |---|---|---| - * | Manage employment documents (`employment_documents`) | View documents (`document:read`) | Manage documents (`document:write`) | + * | Manage employment documents (`employment_documents`) | - | Manage travel letters (`travel_letter:write`) | * */ -export const getV1ContractorsEmploymentsEmploymentIdContractDocumentsId = < +export const patchV1TravelLetterRequestsId2 = < ThrowOnError extends boolean = false, >( - options: Options< - GetV1ContractorsEmploymentsEmploymentIdContractDocumentsIdData, - ThrowOnError - >, + options: Options, ) => - (options.client ?? client).get< - GetV1ContractorsEmploymentsEmploymentIdContractDocumentsIdResponses, - GetV1ContractorsEmploymentsEmploymentIdContractDocumentsIdErrors, + (options.client ?? client).patch< + PatchV1TravelLetterRequestsId2Responses, + PatchV1TravelLetterRequestsId2Errors, ThrowOnError >({ - security: [ - { scheme: 'bearer', type: 'http' }, - { scheme: 'bearer', type: 'http' }, - ], - url: '/v1/contractors/employments/{employment_id}/contract-documents/{id}', + url: '/v1/travel-letter-requests/{id}', ...options, + headers: { + 'Content-Type': 'application/json', + ...options.headers, + }, }); /** - * List contract documents for an employment + * Updates a travel letter request * - * Only contractor employment types are supported. Lists contract documents for a specific employment with pagination, filtering by status, and sorted by updated_at descending (latest first). + * Updates a travel letter request * * ## Scopes * * | Category | Read only Scope | Write only Scope (read access implicit) | * |---|---|---| - * | Manage employment documents (`employment_documents`) | View documents (`document:read`) | Manage documents (`document:write`) | + * | Manage employment documents (`employment_documents`) | - | Manage travel letters (`travel_letter:write`) | * */ -export const getV1EmploymentsEmploymentIdContractDocuments = < +export const patchV1TravelLetterRequestsId = < ThrowOnError extends boolean = false, >( - options: Options< - GetV1EmploymentsEmploymentIdContractDocumentsData, - ThrowOnError - >, + options: Options, ) => - (options.client ?? client).get< - GetV1EmploymentsEmploymentIdContractDocumentsResponses, - GetV1EmploymentsEmploymentIdContractDocumentsErrors, + (options.client ?? client).put< + PatchV1TravelLetterRequestsIdResponses, + PatchV1TravelLetterRequestsIdErrors, ThrowOnError >({ - security: [ - { scheme: 'bearer', type: 'http' }, - { scheme: 'bearer', type: 'http' }, - ], - url: '/v1/employments/{employment_id}/contract-documents', + url: '/v1/travel-letter-requests/{id}', ...options, + headers: { + 'Content-Type': 'application/json', + ...options.headers, + }, }); /** - * List expenses + * Find or create a document for a pre-onboarding requirement + * + * Finds an existing unsigned pre-onboarding document for the given document requirement, or + * creates a new one. Idempotent: repeated calls return the same document until it is signed. * - * Lists all expenses records * * ## Scopes * * | Category | Read only Scope | Write only Scope (read access implicit) | * |---|---|---| - * | Manage expenses (`employment_payments`) | View expenses (`expense:read`) | Manage expenses (`expense:write`) | + * | Manage employment documents (`employment_documents`) | - | Manage documents (`document:write`) | * */ -export const getV1Expenses = ( - options: Options, -) => - (options.client ?? client).get< - GetV1ExpensesResponses, - GetV1ExpensesErrors, - ThrowOnError - >({ - security: [ - { scheme: 'bearer', type: 'http' }, - { scheme: 'bearer', type: 'http' }, - ], - url: '/v1/expenses', - ...options, - }); +export const postV1OnboardingEmploymentsEmploymentIdPreOnboardingRequirementsRequirementSlugDocuments = + ( + options: Options< + PostV1OnboardingEmploymentsEmploymentIdPreOnboardingRequirementsRequirementSlugDocumentsData, + ThrowOnError + >, + ) => + (options.client ?? client).post< + PostV1OnboardingEmploymentsEmploymentIdPreOnboardingRequirementsRequirementSlugDocumentsResponses, + PostV1OnboardingEmploymentsEmploymentIdPreOnboardingRequirementsRequirementSlugDocumentsErrors, + ThrowOnError + >({ + url: '/v1/onboarding/employments/{employment_id}/pre-onboarding-requirements/{requirement_slug}/documents', + ...options, + }); /** - * Create expense - * - * Creates an **approved** expense + * Pass KYB * - * ## Scopes + * Pass KYB and credit risk for a company without the intervention of a Remote admin. * - * | Category | Read only Scope | Write only Scope (read access implicit) | - * |---|---|---| - * | Manage expenses (`employment_payments`) | - | Manage expenses (`expense:write`) | + * This endpoint is only available in Sandbox, otherwise it will respond with a 404. * */ -export const postV1Expenses = ( - options: Options, +export const postV1SandboxCompaniesCompanyIdBypassEligibilityChecks = < + ThrowOnError extends boolean = false, +>( + options: Options< + PostV1SandboxCompaniesCompanyIdBypassEligibilityChecksData, + ThrowOnError + >, ) => (options.client ?? client).post< - PostV1ExpensesResponses, - PostV1ExpensesErrors, + PostV1SandboxCompaniesCompanyIdBypassEligibilityChecksResponses, + PostV1SandboxCompaniesCompanyIdBypassEligibilityChecksErrors, ThrowOnError >({ - security: [ - { scheme: 'bearer', type: 'http' }, - { scheme: 'bearer', type: 'http' }, - ], - url: '/v1/expenses', + url: '/v1/sandbox/companies/{company_id}/bypass-eligibility-checks', ...options, - headers: { - 'Content-Type': 'application/json', - ...options.headers, - }, }); /** - * Show the current SSO Configuration + * List Employee Leave Policies * - * Shows the current SSO Configuration for the company. + * List the leave policies for the current employee * * ## Scopes * * | Category | Read only Scope | Write only Scope (read access implicit) | * |---|---|---| - * | Manage company resources (`company_admin`) | View SSO configuration (`sso_configuration:read`) | Manage SSO (`sso_configuration:write`) | + * | Manage timeoffs (`time_and_attendance`) | View timeoffs (`timeoff:read`) | Manage timeoffs (`timeoff:write`) | * */ -export const getV1SsoConfiguration = ( - options?: Options, +export const getV1EmployeeLeavePolicies = < + ThrowOnError extends boolean = false, +>( + options?: Options, ) => (options?.client ?? client).get< - GetV1SsoConfigurationResponses, - GetV1SsoConfigurationErrors, + GetV1EmployeeLeavePoliciesResponses, + GetV1EmployeeLeavePoliciesErrors, ThrowOnError - >({ - security: [ - { scheme: 'bearer', type: 'http' }, - { scheme: 'bearer', type: 'http' }, - ], - url: '/v1/sso-configuration', - ...options, - }); + >({ url: '/v1/employee/leave-policies', ...options }); /** - * Create the SSO Configuration + * List Webhook Callbacks * - * Creates the SSO Configuration for the company. + * List callbacks for a given company * * ## Scopes * * | Category | Read only Scope | Write only Scope (read access implicit) | * |---|---|---| - * | Manage company resources (`company_admin`) | - | Manage SSO (`sso_configuration:write`) | + * | Manage company resources (`company_admin`) | View webhooks (`webhook:read`) | Manage webhooks (`webhook:write`) | * */ -export const postV1SsoConfiguration = ( - options: Options, +export const getV1CompaniesCompanyIdWebhookCallbacks = < + ThrowOnError extends boolean = false, +>( + options: Options, ) => - (options.client ?? client).post< - PostV1SsoConfigurationResponses, - PostV1SsoConfigurationErrors, + (options.client ?? client).get< + GetV1CompaniesCompanyIdWebhookCallbacksResponses, + GetV1CompaniesCompanyIdWebhookCallbacksErrors, ThrowOnError - >({ - security: [ - { scheme: 'bearer', type: 'http' }, - { scheme: 'bearer', type: 'http' }, - ], - url: '/v1/sso-configuration', - ...options, - headers: { - 'Content-Type': 'application/json', - ...options.headers, - }, - }); - -/** - * Create a contractor timesheet - * - * Creates a timesheet on behalf of a contractor employment. - * - * The submitted hours are immediately available to the contractor in the Remote UI for - * self-serve invoice creation (Invoices → Create invoice → "Use Time Tracking"). - * - * This endpoint is restricted to contractor employments. Calls against EOR or Global Payroll - * employments are rejected with `422`. - * - * - * ## Scopes - * - * | Category | Read only Scope | Write only Scope (read access implicit) | - * |---|---|---| - * | Manage timeoffs (`time_and_attendance`) | - | Manage timesheets (`timesheet:write`) | - * - */ -export const postV1ContractorsEmploymentsEmploymentIdTimesheets = < - ThrowOnError extends boolean = false, ->( - options: Options< - PostV1ContractorsEmploymentsEmploymentIdTimesheetsData, - ThrowOnError - >, -) => - (options.client ?? client).post< - PostV1ContractorsEmploymentsEmploymentIdTimesheetsResponses, - PostV1ContractorsEmploymentsEmploymentIdTimesheetsErrors, - ThrowOnError - >({ - security: [ - { scheme: 'bearer', type: 'http' }, - { scheme: 'bearer', type: 'http' }, - ], - url: '/v1/contractors/employments/{employment_id}/timesheets', - ...options, - headers: { - 'Content-Type': 'application/json', - ...options.headers, - }, - }); - -/** - * Approve Contract Amendment - * - * Approves a contract amendment request without the intervention of a Remote admin. - * Approvals done via this endpoint are effective immediately, - * regardless of the effective date entered on the contract amendment creation. - * - * This endpoint is only available in Sandbox, otherwise it will respond with a 404. - * - */ -export const putV1SandboxContractAmendmentsContractAmendmentRequestIdApprove = < - ThrowOnError extends boolean = false, ->( - options: Options< - PutV1SandboxContractAmendmentsContractAmendmentRequestIdApproveData, - ThrowOnError - >, -) => - (options.client ?? client).put< - PutV1SandboxContractAmendmentsContractAmendmentRequestIdApproveResponses, - PutV1SandboxContractAmendmentsContractAmendmentRequestIdApproveErrors, - ThrowOnError - >({ - security: [ - { scheme: 'bearer', type: 'http' }, - { scheme: 'bearer', type: 'http' }, - ], - url: '/v1/sandbox/contract-amendments/{contract_amendment_request_id}/approve', - ...options, - }); + >({ url: '/v1/companies/{company_id}/webhook-callbacks', ...options }); /** - * List Employee Leave Policies + * Download a billing document PDF * - * List the leave policies for the current employee + * Downloads a billing document PDF * * ## Scopes * * | Category | Read only Scope | Write only Scope (read access implicit) | * |---|---|---| - * | Manage timeoffs (`time_and_attendance`) | View timeoffs (`timeoff:read`) | Manage timeoffs (`timeoff:write`) | + * | Manage invoices (`invoices`) | View invoices (`invoices:read`) | Manage invoices (`invoices:write`) | * */ -export const getV1EmployeeLeavePolicies = < +export const getV1BillingDocumentsBillingDocumentIdPdf = < ThrowOnError extends boolean = false, >( - options?: Options, + options: Options, ) => - (options?.client ?? client).get< - GetV1EmployeeLeavePoliciesResponses, - GetV1EmployeeLeavePoliciesErrors, + (options.client ?? client).get< + GetV1BillingDocumentsBillingDocumentIdPdfResponses, + GetV1BillingDocumentsBillingDocumentIdPdfErrors, ThrowOnError - >({ - security: [{ scheme: 'bearer', type: 'http' }], - url: '/v1/employee/leave-policies', - ...options, - }); + >({ url: '/v1/billing-documents/{billing_document_id}/pdf', ...options }); /** - * List all currencies for the contractor - * - * The currencies are listed in the following order: - * 1. billing currency of the company - * 2. currencies of contractor’s existing withdrawal methods - * 3. currency of the contractor’s country - * 4. the rest, alphabetical. + * Delete a Webhook Callback * + * Delete a callback previously registered for webhooks * * ## Scopes * * | Category | Read only Scope | Write only Scope (read access implicit) | * |---|---|---| - * | Manage employments (`employments`) | View employments (`employment:read`) | Manage employments (`employment:write`) | + * | Manage company resources (`company_admin`) | - | Manage webhooks (`webhook:write`) | * */ -export const getV1ContractorsEmploymentsEmploymentIdContractorCurrencies = < +export const deleteV1WebhookCallbacksId = < ThrowOnError extends boolean = false, >( - options: Options< - GetV1ContractorsEmploymentsEmploymentIdContractorCurrenciesData, - ThrowOnError - >, + options: Options, ) => - (options.client ?? client).get< - GetV1ContractorsEmploymentsEmploymentIdContractorCurrenciesResponses, - GetV1ContractorsEmploymentsEmploymentIdContractorCurrenciesErrors, + (options.client ?? client).delete< + DeleteV1WebhookCallbacksIdResponses, + DeleteV1WebhookCallbacksIdErrors, ThrowOnError - >({ - security: [ - { scheme: 'bearer', type: 'http' }, - { scheme: 'bearer', type: 'http' }, - ], - url: '/v1/contractors/employments/{employment_id}/contractor-currencies', - ...options, - }); + >({ url: '/v1/webhook-callbacks/{id}', ...options }); /** - * Replay Webhook Events + * Update a Webhook Callback * - * Replay webhook events + * Update a callback previously registered for webhooks * * ## Scopes * @@ -2783,16 +2523,15 @@ export const getV1ContractorsEmploymentsEmploymentIdContractorCurrencies = < * | Manage company resources (`company_admin`) | - | Manage webhooks (`webhook:write`) | * */ -export const postV1WebhookEventsReplay = ( - options: Options, +export const patchV1WebhookCallbacksId = ( + options: Options, ) => - (options.client ?? client).post< - PostV1WebhookEventsReplayResponses, - PostV1WebhookEventsReplayErrors, + (options.client ?? client).patch< + PatchV1WebhookCallbacksIdResponses, + PatchV1WebhookCallbacksIdErrors, ThrowOnError >({ - security: [{ scheme: 'bearer', type: 'http' }], - url: '/v1/webhook-events/replay', + url: '/v1/webhook-callbacks/{id}', ...options, headers: { 'Content-Type': 'application/json', @@ -2801,132 +2540,117 @@ export const postV1WebhookEventsReplay = ( }); /** - * Create a contractor of record (COR) termination request + * List countries * - * Initiates a termination request for a Contractor of Record employment. - * When a termination request is sent, a stop work order is issued and the contractor remains active until a final invoice is paid or waived. - * Currently, only Contractor of Record employments can be terminated. + * Returns a list of all countries that are supported by Remote API alphabetically ordered. + * The supported list accounts for creating employment with basic information and it does not imply fully onboarding employment via JSON Schema. + * The countries present in the list are the ones where creating a company is allowed. * * * ## Scopes * * | Category | Read only Scope | Write only Scope (read access implicit) | * |---|---|---| - * | Manage employments (`employments`) | - | Manage employments (`employment:write`) | + * | Manage company resources (`company_admin`) | View countries (`country:read`) | - | * */ -export const postV1ContractorsEmploymentsEmploymentIdCorTerminationRequests = < - ThrowOnError extends boolean = false, ->( - options: Options< - PostV1ContractorsEmploymentsEmploymentIdCorTerminationRequestsData, - ThrowOnError - >, +export const getV1Countries = ( + options: Options, ) => - (options.client ?? client).post< - PostV1ContractorsEmploymentsEmploymentIdCorTerminationRequestsResponses, - PostV1ContractorsEmploymentsEmploymentIdCorTerminationRequestsErrors, + (options.client ?? client).get< + GetV1CountriesResponses, + GetV1CountriesErrors, ThrowOnError - >({ - security: [ - { scheme: 'bearer', type: 'http' }, - { scheme: 'bearer', type: 'http' }, - ], - url: '/v1/contractors/employments/{employment_id}/cor-termination-requests', - ...options, - }); + >({ url: '/v1/countries', ...options }); /** - * Show Background Check + * List pre-onboarding requirements for an employment + * + * Returns the list of pre-onboarding requirements — both documents (e.g. master service + * agreements, individual labour agreements) and acknowledgements — that must be fulfilled + * before the given employment can be onboarded. Each requirement carries its `type`, current + * `status`, and the requirement it `depends_on` (if any). * - * Show Background Check details for a given employment and background check request. * * ## Scopes * * | Category | Read only Scope | Write only Scope (read access implicit) | * |---|---|---| - * | Manage employments (`employments`) | View background checks (`background_check:read`) | - | + * | Manage employment documents (`employment_documents`) | View documents (`document:read`) | Manage documents (`document:write`) | * */ -export const getV1EmploymentsEmploymentIdBackgroundChecksBackgroundCheckId = < +export const getV1OnboardingEmploymentsEmploymentIdPreOnboardingRequirements = < ThrowOnError extends boolean = false, >( options: Options< - GetV1EmploymentsEmploymentIdBackgroundChecksBackgroundCheckIdData, + GetV1OnboardingEmploymentsEmploymentIdPreOnboardingRequirementsData, ThrowOnError >, ) => (options.client ?? client).get< - GetV1EmploymentsEmploymentIdBackgroundChecksBackgroundCheckIdResponses, - GetV1EmploymentsEmploymentIdBackgroundChecksBackgroundCheckIdErrors, + GetV1OnboardingEmploymentsEmploymentIdPreOnboardingRequirementsResponses, + GetV1OnboardingEmploymentsEmploymentIdPreOnboardingRequirementsErrors, ThrowOnError >({ - security: [{ scheme: 'bearer', type: 'http' }], - url: '/v1/employments/{employment_id}/background-checks/{background_check_id}', + url: '/v1/onboarding/employments/{employment_id}/pre-onboarding-requirements', ...options, }); /** - * Show benefit renewal request schema + * Show contractor eligibility and COR-supported countries for legal entity * - * Returns the json schema of the `benefit_renewal_request` form for a specific request. - * This endpoint requires a company access token, as forms are dependent on certain - * properties of companies and their current employments. + * Returns which contractor products (standard, plus, cor) the legal entity is eligible to use, + * and the list of country codes where COR is supported for this legal entity. + * COR-supported countries exclude sanctioned and signup-prevented countries and apply entity rules (same-country, local-to-local). + * When the legal entity is not COR-eligible, `cor_supported_country_codes` is an empty list. * * * ## Scopes * * | Category | Read only Scope | Write only Scope (read access implicit) | * |---|---|---| - * | Manage company resources (`company_admin`) | View benefit renewals (`benefit_renewal:read`) | Manage benefit renewals (`benefit_renewal:write`) | + * | Manage company resources (`company_admin`) | View companies (`company:read`) | Manage companies (`company:write`) | * */ -export const getV1BenefitRenewalRequestsBenefitRenewalRequestIdSchema = < - ThrowOnError extends boolean = false, ->( - options: Options< - GetV1BenefitRenewalRequestsBenefitRenewalRequestIdSchemaData, - ThrowOnError - >, -) => - (options.client ?? client).get< - GetV1BenefitRenewalRequestsBenefitRenewalRequestIdSchemaResponses, - GetV1BenefitRenewalRequestsBenefitRenewalRequestIdSchemaErrors, - ThrowOnError - >({ - security: [ - { scheme: 'bearer', type: 'http' }, - { scheme: 'bearer', type: 'http' }, - ], - url: '/v1/benefit-renewal-requests/{benefit_renewal_request_id}/schema', - ...options, - }); +export const getV1CompaniesCompanyIdLegalEntitiesLegalEntityIdContractorEligibility = + ( + options: Options< + GetV1CompaniesCompanyIdLegalEntitiesLegalEntityIdContractorEligibilityData, + ThrowOnError + >, + ) => + (options.client ?? client).get< + GetV1CompaniesCompanyIdLegalEntitiesLegalEntityIdContractorEligibilityResponses, + GetV1CompaniesCompanyIdLegalEntitiesLegalEntityIdContractorEligibilityErrors, + ThrowOnError + >({ + url: '/v1/companies/{company_id}/legal-entities/{legal_entity_id}/contractor-eligibility', + ...options, + }); /** - * Magic links generator - * - * Generates a magic link for a passwordless authentication. - * To create a magic link for a company admin, you need to provide the `user_id` parameter. - * To create a magic link for an employee, you need to provide the `employment_id` parameter. + * Convert currency using dynamic rates * + * Convert currency using the rates Remote applies during employment creation and invoicing. * * ## Scopes * * | Category | Read only Scope | Write only Scope (read access implicit) | * |---|---|---| - * | Manage company resources (`company_admin`) | - | Create magic links (`magic_link:write`) | + * | Manage company resources (`company_admin`) | Convert currencies (`convert_currency:read`) | - | * */ -export const postV1MagicLink = ( - options: Options, +export const postV1CurrencyConverterEffective = < + ThrowOnError extends boolean = false, +>( + options: Options, ) => (options.client ?? client).post< - PostV1MagicLinkResponses, - PostV1MagicLinkErrors, + PostV1CurrencyConverterEffectiveResponses, + PostV1CurrencyConverterEffectiveErrors, ThrowOnError >({ - security: [{ scheme: 'bearer', type: 'http' }], - url: '/v1/magic-link', + url: '/v1/currency-converter/effective', ...options, headers: { 'Content-Type': 'application/json', @@ -2935,133 +2659,148 @@ export const postV1MagicLink = ( }); /** - * Delete a Recurring Incentive - * - * Delete a Recurring Incentive, that is, a monthly paid incentive. - * - * Internally, Remote schedules upcoming incentives. As such, when you attempt to - * delete a recurring incentive, Remote will **ONLY** delete scheduled incentives - * with the `pending` status. - * - * Incentives payments that are already scheduled and cannot be deleted will be - * included in the response, in case you need to reference them. + * Show personal information for the authenticated employee * + * Returns personal information for the authenticated employee. * * ## Scopes * * | Category | Read only Scope | Write only Scope (read access implicit) | * |---|---|---| - * | Manage expenses (`employment_payments`) | - | Manage incentives (`incentive:write`) | + * | Manage employments (`employments`) | View personal details (`personal_detail:read`) | Manage personal details (`personal_detail:write`) | * */ -export const deleteV1IncentivesRecurringId = < +export const getV1EmployeePersonalInformation = < ThrowOnError extends boolean = false, >( - options: Options, + options?: Options, ) => - (options.client ?? client).delete< - DeleteV1IncentivesRecurringIdResponses, - DeleteV1IncentivesRecurringIdErrors, + (options?.client ?? client).get< + GetV1EmployeePersonalInformationResponses, + GetV1EmployeePersonalInformationErrors, ThrowOnError - >({ - security: [ - { scheme: 'bearer', type: 'http' }, - { scheme: 'bearer', type: 'http' }, - ], - url: '/v1/incentives/recurring/{id}', - ...options, - }); + >({ url: '/v1/employee/personal-information', ...options }); /** - * List Incentives + * Show form schema + * + * Returns the json schema of a supported form. Possible form names are: + * ``` + * - address_details + * - administrative_details + * - bank_account_details + * - employment_basic_information + * - contractor_basic_information + * - contractor_contract_details + * - billing_address_details + * - contract_details + * - emergency_contact + * - emergency_contact_details + * - employment_document_details + * - personal_details + * - pricing_plan_details + * - company_basic_information + * - global_payroll_administrative_details + * - global_payroll_bank_account_details + * - global_payroll_basic_information + * - global_payroll_contract_details + * - global_payroll_federal_taxes + * - global_payroll_state_taxes + * - global_payroll_personal_details + * - benefit_renewal_request + * - hris_personal_details + * + * ``` + * + * Most forms require a company access token, as they are dependent on certain + * properties of companies and their current employments. However, the `address_details` + * and `company_basic_information` forms can be accessed using client_credentials + * authentication (without a company). + * * - * Lists all Incentives of a company * * ## Scopes * * | Category | Read only Scope | Write only Scope (read access implicit) | * |---|---|---| - * | Manage expenses (`employment_payments`) | View incentives (`incentive:read`) | Manage incentives (`incentive:write`) | + * | Manage company resources (`company_admin`) | View forms (`form:read`) | - | * */ -export const getV1Incentives = ( - options: Options, +export const getV1CountriesCountryCodeForm = < + ThrowOnError extends boolean = false, +>( + options: Options, ) => (options.client ?? client).get< - GetV1IncentivesResponses, - GetV1IncentivesErrors, + GetV1CountriesCountryCodeFormResponses, + GetV1CountriesCountryCodeFormErrors, ThrowOnError - >({ - security: [ - { scheme: 'bearer', type: 'http' }, - { scheme: 'bearer', type: 'http' }, - ], - url: '/v1/incentives', - ...options, - }); + >({ url: '/v1/countries/{country_code}/{form}', ...options }); /** - * Create Incentive + * List Offboardings (v2) * - * Creates an Incentive. + * Lists offboardings for a company. * - * Incentives use the currency of the employment specified provided in the `employment_id` field. * + * ## Scopes + * + * | Category | Read only Scope | Write only Scope (read access implicit) | + * |---|---|---| + * | Manage employments (`employments`) | View offboarding requests (`offboarding:read`) | Manage offboarding (`offboarding:write`) | + * + */ +export const getV2Offboardings = ( + options?: Options, +) => + (options?.client ?? client).get< + GetV2OffboardingsResponses, + GetV2OffboardingsErrors, + ThrowOnError + >({ url: '/v2/offboardings', ...options }); + +/** + * List Time Off + * + * Lists all Time Off records. * * ## Scopes * * | Category | Read only Scope | Write only Scope (read access implicit) | * |---|---|---| - * | Manage expenses (`employment_payments`) | - | Manage incentives (`incentive:write`) | + * | Manage timeoffs (`time_and_attendance`) | View timeoffs (`timeoff:read`) | Manage timeoffs (`timeoff:write`) | * */ -export const postV1Incentives = ( - options: Options, +export const getV1Timeoff = ( + options: Options, ) => - (options.client ?? client).post< - PostV1IncentivesResponses, - PostV1IncentivesErrors, + (options.client ?? client).get< + GetV1TimeoffResponses, + GetV1TimeoffErrors, ThrowOnError - >({ - security: [ - { scheme: 'bearer', type: 'http' }, - { scheme: 'bearer', type: 'http' }, - ], - url: '/v1/incentives', - ...options, - headers: { - 'Content-Type': 'application/json', - ...options.headers, - }, - }); + >({ url: '/v1/timeoff', ...options }); /** - * Create probation completion letter + * Create Time Off * - * Create a new probation completion letter request. + * Creates a Time Off record * * ## Scopes * * | Category | Read only Scope | Write only Scope (read access implicit) | * |---|---|---| - * | Manage employment documents (`employment_documents`) | - | Manage probation documents (`probation_document:write`) | + * | Manage timeoffs (`time_and_attendance`) | - | Manage timeoffs (`timeoff:write`) | * */ -export const postV1ProbationCompletionLetter = < - ThrowOnError extends boolean = false, ->( - options: Options, +export const postV1Timeoff = ( + options: Options, ) => (options.client ?? client).post< - PostV1ProbationCompletionLetterResponses, - PostV1ProbationCompletionLetterErrors, + PostV1TimeoffResponses, + PostV1TimeoffErrors, ThrowOnError >({ - security: [ - { scheme: 'bearer', type: 'http' }, - { scheme: 'bearer', type: 'http' }, - ], - url: '/v1/probation-completion-letter', + url: '/v1/timeoff', ...options, headers: { 'Content-Type': 'application/json', @@ -3070,192 +2809,157 @@ export const postV1ProbationCompletionLetter = < }); /** - * Show Contractor Invoice Schedule - * - * Shows a single Contractor Invoice Schedule record - * - * ## Scopes - * - * | Category | Read only Scope | Write only Scope (read access implicit) | - * |---|---|---| - * | Manage invoices (`invoices`) | View invoices (`invoices:read`) | Manage invoices (`invoices:write`) | + * List countries for Cost Calculator * + * Lists active and processing countries */ -export const getV1ContractorInvoiceSchedulesId = < +export const getV1CostCalculatorCountries = < ThrowOnError extends boolean = false, >( - options: Options, + options?: Options, ) => - (options.client ?? client).get< - GetV1ContractorInvoiceSchedulesIdResponses, - GetV1ContractorInvoiceSchedulesIdErrors, + (options?.client ?? client).get< + GetV1CostCalculatorCountriesResponses, + unknown, ThrowOnError - >({ - security: [ - { scheme: 'bearer', type: 'http' }, - { scheme: 'bearer', type: 'http' }, - ], - url: '/v1/contractor-invoice-schedules/{id}', - ...options, - }); + >({ url: '/v1/cost-calculator/countries', ...options }); /** - * Updates Contractor Invoice Schedule + * Submit risk reserve proof of payment + * + * Submits a proof of payment document for a risk reserve associated with an employment. + * + * Triggers an `employment.cor_hiring.proof_of_payment_submitted` webhook event. * - * Updates a contractor invoice schedule record * * ## Scopes * * | Category | Read only Scope | Write only Scope (read access implicit) | * |---|---|---| - * | Manage invoices (`invoices`) | - | Manage invoices (`invoices:write`) | + * | Manage company resources (`company_admin`) | - | Manage risk reserves (`risk_reserve:write`) | * */ -export const patchV1ContractorInvoiceSchedulesId2 = < +export const postV1EmploymentsEmploymentIdRiskReserveProofOfPayments = < ThrowOnError extends boolean = false, >( - options: Options, + options: Options< + PostV1EmploymentsEmploymentIdRiskReserveProofOfPaymentsData, + ThrowOnError + >, ) => - (options.client ?? client).patch< - PatchV1ContractorInvoiceSchedulesId2Responses, - PatchV1ContractorInvoiceSchedulesId2Errors, + (options.client ?? client).post< + PostV1EmploymentsEmploymentIdRiskReserveProofOfPaymentsResponses, + PostV1EmploymentsEmploymentIdRiskReserveProofOfPaymentsErrors, ThrowOnError >({ - security: [ - { scheme: 'bearer', type: 'http' }, - { scheme: 'bearer', type: 'http' }, - ], - url: '/v1/contractor-invoice-schedules/{id}', + ...formDataBodySerializer, + url: '/v1/employments/{employment_id}/risk-reserve-proof-of-payments', ...options, headers: { - 'Content-Type': 'application/json', + 'Content-Type': null, ...options.headers, }, }); /** - * Updates Contractor Invoice Schedule + * Show Background Check * - * Updates a contractor invoice schedule record + * Show Background Check details for a given employment and background check request. * * ## Scopes * * | Category | Read only Scope | Write only Scope (read access implicit) | * |---|---|---| - * | Manage invoices (`invoices`) | - | Manage invoices (`invoices:write`) | + * | Manage employments (`employments`) | View background checks (`background_check:read`) | - | * */ -export const patchV1ContractorInvoiceSchedulesId = < +export const getV1EmploymentsEmploymentIdBackgroundChecksBackgroundCheckId = < ThrowOnError extends boolean = false, >( - options: Options, + options: Options< + GetV1EmploymentsEmploymentIdBackgroundChecksBackgroundCheckIdData, + ThrowOnError + >, ) => - (options.client ?? client).put< - PatchV1ContractorInvoiceSchedulesIdResponses, - PatchV1ContractorInvoiceSchedulesIdErrors, + (options.client ?? client).get< + GetV1EmploymentsEmploymentIdBackgroundChecksBackgroundCheckIdResponses, + GetV1EmploymentsEmploymentIdBackgroundChecksBackgroundCheckIdErrors, ThrowOnError >({ - security: [ - { scheme: 'bearer', type: 'http' }, - { scheme: 'bearer', type: 'http' }, - ], - url: '/v1/contractor-invoice-schedules/{id}', + url: '/v1/employments/{employment_id}/background-checks/{background_check_id}', ...options, - headers: { - 'Content-Type': 'application/json', - ...options.headers, - }, }); /** - * List pre-onboarding document requirements for an employment + * Show Time Off Balance + * + * Shows the time off balance for the given employment_id. * - * Returns the list of pre-onboarding document requirements (e.g. master service agreements, - * individual labour agreements) that must be fulfilled before the given employment can be onboarded. + * Deprecated since February 2025 in favour of **[List Leave Policies Summary](#tag/Leave-Policies/operation/get_index_leave_policies_summary)** endpoint. * * * ## Scopes * * | Category | Read only Scope | Write only Scope (read access implicit) | * |---|---|---| - * | Manage employment documents (`employment_documents`) | View documents (`document:read`) | Manage documents (`document:write`) | + * | Manage timeoffs (`time_and_attendance`) | View timeoffs (`timeoff:read`) | Manage timeoffs (`timeoff:write`) | * + * + * @deprecated */ -export const getV1OnboardingEmploymentsEmploymentIdPreOnboardingDocumentRequirements = - ( - options: Options< - GetV1OnboardingEmploymentsEmploymentIdPreOnboardingDocumentRequirementsData, - ThrowOnError - >, - ) => - (options.client ?? client).get< - GetV1OnboardingEmploymentsEmploymentIdPreOnboardingDocumentRequirementsResponses, - GetV1OnboardingEmploymentsEmploymentIdPreOnboardingDocumentRequirementsErrors, - ThrowOnError - >({ - security: [ - { scheme: 'bearer', type: 'http' }, - { scheme: 'bearer', type: 'http' }, - ], - url: '/v1/onboarding/employments/{employment_id}/pre-onboarding-document-requirements', - ...options, - }); +export const getV1TimeoffBalancesEmploymentId = < + ThrowOnError extends boolean = false, +>( + options: Options, +) => + (options.client ?? client).get< + GetV1TimeoffBalancesEmploymentIdResponses, + GetV1TimeoffBalancesEmploymentIdErrors, + ThrowOnError + >({ url: '/v1/timeoff-balances/{employment_id}', ...options }); /** - * Show Billing Document - * - * Shows a billing document details. - * - * Please contact api-support@remote.com to request access to this endpoint. + * List expenses for the authenticated employee * + * Returns a paginated list of expenses belonging to the current employee. * * ## Scopes * * | Category | Read only Scope | Write only Scope (read access implicit) | * |---|---|---| - * | Manage invoices (`invoices`) | View invoices (`invoices:read`) | Manage invoices (`invoices:write`) | + * | Manage expenses (`employment_payments`) | View expenses (`expense:read`) | Manage expenses (`expense:write`) | * */ -export const getV1BillingDocumentsBillingDocumentId = < - ThrowOnError extends boolean = false, ->( - options: Options, +export const getV1EmployeeExpenses = ( + options?: Options, ) => - (options.client ?? client).get< - GetV1BillingDocumentsBillingDocumentIdResponses, - GetV1BillingDocumentsBillingDocumentIdErrors, + (options?.client ?? client).get< + GetV1EmployeeExpensesResponses, + GetV1EmployeeExpensesErrors, ThrowOnError - >({ - security: [ - { scheme: 'bearer', type: 'http' }, - { scheme: 'bearer', type: 'http' }, - ], - url: '/v1/billing-documents/{billing_document_id}', - ...options, - }); + >({ url: '/v1/employee/expenses', ...options }); /** - * Creates PDF cost estimation of employments + * Create an expense for the authenticated employee + * + * Creates a new expense record for the current employee. + * + * ## Scopes + * + * | Category | Read only Scope | Write only Scope (read access implicit) | + * |---|---|---| + * | Manage expenses (`employment_payments`) | - | Manage expenses (`expense:write`) | * - * Creates a PDF cost estimation of employments based on the provided parameters. */ -export const postV1CostCalculatorEstimationPdf = < - ThrowOnError extends boolean = false, ->( - options?: Options, +export const postV1EmployeeExpenses = ( + options?: Options, ) => (options?.client ?? client).post< - PostV1CostCalculatorEstimationPdfResponses, - PostV1CostCalculatorEstimationPdfErrors, + PostV1EmployeeExpensesResponses, + PostV1EmployeeExpensesErrors, ThrowOnError >({ - security: [ - { scheme: 'bearer', type: 'http' }, - { scheme: 'bearer', type: 'http' }, - { scheme: 'bearer', type: 'http' }, - { scheme: 'bearer', type: 'http' }, - ], - url: '/v1/cost-calculator/estimation-pdf', + url: '/v1/employee/expenses', ...options, headers: { 'Content-Type': 'application/json', @@ -3264,182 +2968,116 @@ export const postV1CostCalculatorEstimationPdf = < }); /** - * List cost center allocations for an employment - * - * Lists the cost center allocations for an employment. Each allocation includes the cost center, - * the allocated percentage, and its effective period. An employment with no cost center assigned - * returns an empty list. - * - * Use the `status` query parameter to return only `active`, `scheduled`, or `expired` allocations. - * When omitted, all allocations are returned. + * Download a resignation letter * + * Downloads a resignation letter from an employment request. * * ## Scopes * * | Category | Read only Scope | Write only Scope (read access implicit) | * |---|---|---| - * | Manage employments (`employments`) | View employments (`employment:read`) | Manage employments (`employment:write`) | + * | Manage employment documents (`employment_documents`) | View resignation letters (`resignation_letter:read`) | - | * */ -export const getV1EmploymentsEmploymentIdCostCenterAllocations = < +export const getV1ResignationsOffboardingRequestIdResignationLetter = < ThrowOnError extends boolean = false, >( options: Options< - GetV1EmploymentsEmploymentIdCostCenterAllocationsData, + GetV1ResignationsOffboardingRequestIdResignationLetterData, ThrowOnError >, ) => (options.client ?? client).get< - GetV1EmploymentsEmploymentIdCostCenterAllocationsResponses, - GetV1EmploymentsEmploymentIdCostCenterAllocationsErrors, + GetV1ResignationsOffboardingRequestIdResignationLetterResponses, + GetV1ResignationsOffboardingRequestIdResignationLetterErrors, ThrowOnError >({ - security: [ - { scheme: 'bearer', type: 'http' }, - { scheme: 'bearer', type: 'http' }, - ], - url: '/v1/employments/{employment_id}/cost-center-allocations', + url: '/v1/resignations/{offboarding_request_id}/resignation-letter', ...options, }); /** - * Show work authorization request + * Deletes a Company Manager user * - * Show a single work authorization request. + * Deletes a Company Manager user * * ## Scopes * * | Category | Read only Scope | Write only Scope (read access implicit) | * |---|---|---| - * | Manage employments (`employments`) | View work authorizations (`work_authorization:read`) | Manage work authorizations (`work_authorization:write`) | + * | Manage company resources (`company_admin`) | - | Manage managers (`company_manager:write`) | * */ -export const getV1WorkAuthorizationRequestsId = < +export const deleteV1CompanyManagersUserId = < ThrowOnError extends boolean = false, >( - options: Options, + options: Options, ) => - (options.client ?? client).get< - GetV1WorkAuthorizationRequestsIdResponses, - GetV1WorkAuthorizationRequestsIdErrors, + (options.client ?? client).delete< + DeleteV1CompanyManagersUserIdResponses, + DeleteV1CompanyManagersUserIdErrors, ThrowOnError - >({ - security: [ - { scheme: 'bearer', type: 'http' }, - { scheme: 'bearer', type: 'http' }, - ], - url: '/v1/work-authorization-requests/{id}', - ...options, - }); + >({ url: '/v1/company-managers/{user_id}', ...options }); /** - * Update work authorization request + * Show company manager user * - * Updates a work authorization request. + * Shows a single company manager user * * ## Scopes * * | Category | Read only Scope | Write only Scope (read access implicit) | * |---|---|---| - * | Manage employments (`employments`) | - | Manage work authorizations (`work_authorization:write`) | + * | Manage company resources (`company_admin`) | View managers (`company_manager:read`) | Manage managers (`company_manager:write`) | * */ -export const patchV1WorkAuthorizationRequestsId2 = < +export const getV1CompanyManagersUserId = < ThrowOnError extends boolean = false, >( - options: Options, + options: Options, ) => - (options.client ?? client).patch< - PatchV1WorkAuthorizationRequestsId2Responses, - PatchV1WorkAuthorizationRequestsId2Errors, + (options.client ?? client).get< + GetV1CompanyManagersUserIdResponses, + GetV1CompanyManagersUserIdErrors, ThrowOnError - >({ - security: [ - { scheme: 'bearer', type: 'http' }, - { scheme: 'bearer', type: 'http' }, - ], - url: '/v1/work-authorization-requests/{id}', - ...options, - headers: { - 'Content-Type': 'application/json', - ...options.headers, - }, - }); + >({ url: '/v1/company-managers/{user_id}', ...options }); /** - * Update work authorization request + * Show onboarding steps for an employment * - * Updates a work authorization request. + * Returns onboarding steps and substeps in a hierarchical, ordered structure. * * ## Scopes * * | Category | Read only Scope | Write only Scope (read access implicit) | * |---|---|---| - * | Manage employments (`employments`) | - | Manage work authorizations (`work_authorization:write`) | + * | Manage employments (`employments`) | View employments (`employment:read`) | Manage employments (`employment:write`) | * */ -export const patchV1WorkAuthorizationRequestsId = < +export const getV1EmploymentsEmploymentIdOnboardingSteps = < ThrowOnError extends boolean = false, >( - options: Options, -) => - (options.client ?? client).put< - PatchV1WorkAuthorizationRequestsIdResponses, - PatchV1WorkAuthorizationRequestsIdErrors, + options: Options< + GetV1EmploymentsEmploymentIdOnboardingStepsData, ThrowOnError - >({ - security: [ - { scheme: 'bearer', type: 'http' }, - { scheme: 'bearer', type: 'http' }, - ], - url: '/v1/work-authorization-requests/{id}', - ...options, - headers: { - 'Content-Type': 'application/json', - ...options.headers, - }, - }); - -/** - * List Employee Leave Policies Summary - * - * List the leave policies summary (balances and entitlements) for the current employee - * - * ## Scopes - * - * | Category | Read only Scope | Write only Scope (read access implicit) | - * |---|---|---| - * | Manage timeoffs (`time_and_attendance`) | View timeoffs (`timeoff:read`) | Manage timeoffs (`timeoff:write`) | - * - */ -export const getV1EmployeeLeavePoliciesSummary = < - ThrowOnError extends boolean = false, ->( - options?: Options, + >, ) => - (options?.client ?? client).get< - GetV1EmployeeLeavePoliciesSummaryResponses, - GetV1EmployeeLeavePoliciesSummaryErrors, + (options.client ?? client).get< + GetV1EmploymentsEmploymentIdOnboardingStepsResponses, + GetV1EmploymentsEmploymentIdOnboardingStepsErrors, ThrowOnError - >({ - security: [{ scheme: 'bearer', type: 'http' }], - url: '/v1/employee/leave-policies/summary', - ...options, - }); + >({ url: '/v1/employments/{employment_id}/onboarding-steps', ...options }); /** - * Update federal taxes - * - * Updates employment's federal taxes. + * Automatable Contract Amendment * - * Requirements to update federal taxes successfully: - * * Employment should be Global Payroll - * * Employment should be in the post-enrollment state - * * Employment should belong to USA + * Check if a contract amendment request is automatable. + * If the contract amendment request is automatable, then after submission, it will instantly amend the employee's contract + * and send them an updated document. * * This endpoint requires and returns country-specific data. The exact required and returned fields will * vary depending on which country the employment is in. To see the list of parameters for each country, - * see the **Show form schema** endpoint under the [Countries](#tag/Countries) category. + * see the **Show form schema** endpoint under the [Contract Amendments](#tag/Contract-Amendments) category. * * Please note that the compliance requirements for each country are subject to change according to local * laws. Given its continual updates, using Remote's [json-schema-form](https://developer.remote.com/docs/how-json-schemas-work) should be considered in order to avoid @@ -3459,24 +3097,20 @@ export const getV1EmployeeLeavePoliciesSummary = < * * | Category | Read only Scope | Write only Scope (read access implicit) | * |---|---|---| - * | Manage employments (`employments`) | - | Manage employments (`employment:write`) | + * | Manage employments (`employments`) | - | Manage contract amendments (`contract_amendment:write`) | * */ -export const putV2EmploymentsEmploymentIdFederalTaxes = < +export const postV1ContractAmendmentsAutomatable = < ThrowOnError extends boolean = false, >( - options: Options, + options: Options, ) => - (options.client ?? client).put< - PutV2EmploymentsEmploymentIdFederalTaxesResponses, - PutV2EmploymentsEmploymentIdFederalTaxesErrors, + (options.client ?? client).post< + PostV1ContractAmendmentsAutomatableResponses, + PostV1ContractAmendmentsAutomatableErrors, ThrowOnError >({ - security: [ - { scheme: 'bearer', type: 'http' }, - { scheme: 'bearer', type: 'http' }, - ], - url: '/v2/employments/{employment_id}/federal-taxes', + url: '/v1/contract-amendments/automatable', ...options, headers: { 'Content-Type': 'application/json', @@ -3485,244 +3119,183 @@ export const putV2EmploymentsEmploymentIdFederalTaxes = < }); /** - * Create Probation Extension + * List Company Payroll Runs * - * Create a probation extension request. + * Lists all payroll runs for a company * * ## Scopes * * | Category | Read only Scope | Write only Scope (read access implicit) | * |---|---|---| - * | Manage employment documents (`employment_documents`) | - | Manage probation documents (`probation_document:write`) | + * | Manage payroll runs (`payroll`) | View payroll runs (`payroll_run:read`) | - | * */ -export const postV1ProbationExtensions = ( - options: Options, +export const getV1PayrollRuns = ( + options?: Options, ) => - (options.client ?? client).post< - PostV1ProbationExtensionsResponses, - PostV1ProbationExtensionsErrors, + (options?.client ?? client).get< + GetV1PayrollRunsResponses, + GetV1PayrollRunsErrors, ThrowOnError - >({ - security: [ - { scheme: 'bearer', type: 'http' }, - { scheme: 'bearer', type: 'http' }, - ], - url: '/v1/probation-extensions', - ...options, - headers: { - 'Content-Type': 'application/json', - ...options.headers, - }, - }); + >({ url: '/v1/payroll-runs', ...options }); /** - * Create risk reserve + * List incentives for the authenticated employee * - * Create a new risk reserve + * Returns all incentives for the authenticated employee. * * ## Scopes * * | Category | Read only Scope | Write only Scope (read access implicit) | * |---|---|---| - * | Manage company resources (`company_admin`) | - | Manage risk reserves (`risk_reserve:write`) | + * | Manage expenses (`employment_payments`) | View incentives (`incentive:read`) | Manage incentives (`incentive:write`) | * */ -export const postV1RiskReserve = ( - options: Options, +export const getV1EmployeeIncentives = ( + options?: Options, ) => - (options.client ?? client).post< - PostV1RiskReserveResponses, - PostV1RiskReserveErrors, + (options?.client ?? client).get< + GetV1EmployeeIncentivesResponses, + GetV1EmployeeIncentivesErrors, ThrowOnError - >({ - security: [ - { scheme: 'bearer', type: 'http' }, - { scheme: 'bearer', type: 'http' }, - ], - url: '/v1/risk-reserve', - ...options, - headers: { - 'Content-Type': 'application/json', - ...options.headers, - }, - }); + >({ url: '/v1/employee/incentives', ...options }); /** - * Submit risk reserve proof of payment - * - * Submits a proof of payment document for a risk reserve associated with an employment. - * - * Triggers an `employment.cor_hiring.proof_of_payment_submitted` webhook event. + * Update employment * + * Updates an employment. Use this endpoint to: + * - modify employment states for testing + * - Backdate employment start dates * - * ## Scopes + * This endpoint will respond with a 404 outside of the Sandbox environment. * - * | Category | Read only Scope | Write only Scope (read access implicit) | - * |---|---|---| - * | Manage company resources (`company_admin`) | - | Manage risk reserves (`risk_reserve:write`) | + * For updating an employment's parameters outside of testing purposes, use [this Employment update endpoint](#operation/patch_update_employment). * */ -export const postV1EmploymentsEmploymentIdRiskReserveProofOfPayments = < +export const patchV1SandboxEmploymentsEmploymentId2 = < ThrowOnError extends boolean = false, >( - options: Options< - PostV1EmploymentsEmploymentIdRiskReserveProofOfPaymentsData, - ThrowOnError - >, + options: Options, ) => - (options.client ?? client).post< - PostV1EmploymentsEmploymentIdRiskReserveProofOfPaymentsResponses, - PostV1EmploymentsEmploymentIdRiskReserveProofOfPaymentsErrors, + (options.client ?? client).patch< + PatchV1SandboxEmploymentsEmploymentId2Responses, + PatchV1SandboxEmploymentsEmploymentId2Errors, ThrowOnError >({ - ...formDataBodySerializer, - security: [ - { scheme: 'bearer', type: 'http' }, - { scheme: 'bearer', type: 'http' }, - ], - url: '/v1/employments/{employment_id}/risk-reserve-proof-of-payments', + url: '/v1/sandbox/employments/{employment_id}', ...options, headers: { - 'Content-Type': null, + 'Content-Type': 'application/json', ...options.headers, }, }); /** - * Get Company Compliance Profile - * - * Returns the KYB and credit risk status for the company's default legal entity. + * Update employment * + * Updates an employment. Use this endpoint to: + * - modify employment states for testing + * - Backdate employment start dates * - * ## Scopes + * This endpoint will respond with a 404 outside of the Sandbox environment. * - * | Category | Read only Scope | Write only Scope (read access implicit) | - * |---|---|---| - * | Manage company resources (`company_admin`) | View companies (`company:read`) | Manage companies (`company:write`) | + * For updating an employment's parameters outside of testing purposes, use [this Employment update endpoint](#operation/patch_update_employment). * */ -export const getV1CompaniesCompanyIdComplianceProfile = < +export const patchV1SandboxEmploymentsEmploymentId = < ThrowOnError extends boolean = false, >( - options: Options, + options: Options, ) => - (options.client ?? client).get< - GetV1CompaniesCompanyIdComplianceProfileResponses, - GetV1CompaniesCompanyIdComplianceProfileErrors, + (options.client ?? client).put< + PatchV1SandboxEmploymentsEmploymentIdResponses, + PatchV1SandboxEmploymentsEmploymentIdErrors, ThrowOnError >({ - security: [ - { scheme: 'bearer', type: 'http' }, - { scheme: 'bearer', type: 'http' }, - ], - url: '/v1/companies/{company_id}/compliance-profile', + url: '/v1/sandbox/employments/{employment_id}', ...options, + headers: { + 'Content-Type': 'application/json', + ...options.headers, + }, }); /** - * Show product prices in the company's desired currency + * Show benefit renewal request schema * - * list product prices in the company's desired currency. - * the endpoint currently only returns the product prices for the EOR monthly product and the contractor products (Standard, Plus and COR). - * the product prices are then used to create a pricing plan for the company. + * Returns the json schema of the `benefit_renewal_request` form for a specific request. + * This endpoint requires a company access token, as forms are dependent on certain + * properties of companies and their current employments. * * * ## Scopes * * | Category | Read only Scope | Write only Scope (read access implicit) | * |---|---|---| - * | Manage companies (`company_management`) | View pricing plans (`pricing_plan:read`) | Manage pricing plans (`pricing_plan:write`) | + * | Manage company resources (`company_admin`) | View benefit renewals (`benefit_renewal:read`) | Manage benefit renewals (`benefit_renewal:write`) | * */ -export const getV1CompaniesCompanyIdProductPrices = < +export const getV1BenefitRenewalRequestsBenefitRenewalRequestIdSchema = < ThrowOnError extends boolean = false, >( - options: Options, + options: Options< + GetV1BenefitRenewalRequestsBenefitRenewalRequestIdSchemaData, + ThrowOnError + >, ) => (options.client ?? client).get< - GetV1CompaniesCompanyIdProductPricesResponses, - GetV1CompaniesCompanyIdProductPricesErrors, + GetV1BenefitRenewalRequestsBenefitRenewalRequestIdSchemaResponses, + GetV1BenefitRenewalRequestsBenefitRenewalRequestIdSchemaErrors, ThrowOnError >({ - security: [{ scheme: 'bearer', type: 'http' }], - url: '/v1/companies/{company_id}/product-prices', + url: '/v1/benefit-renewal-requests/{benefit_renewal_request_id}/schema', ...options, }); /** - * Show a company - * - * Given an ID, shows a company. - * - * If the used access token was issued by the OAuth 2.0 Authorization Code flow, - * then only the associated company can be accessed through the endpoint. + * Update billing address details * + * Updates employment's billing address details. * - * ## Scopes + * This endpoint requires and returns country-specific data. The exact required and returned fields will + * vary depending on which country the employment is in. To see the list of parameters for each country, + * see the **Show form schema** endpoint under the [Countries](#tag/Countries) category. * - * | Category | Read only Scope | Write only Scope (read access implicit) | - * |---|---|---| - * | Manage company resources (`company_admin`) | View companies (`company:read`) | Manage companies (`company:write`) | + * Please note that the compliance requirements for each country are subject to change according to local + * laws. Given its continual updates, using Remote's [json-schema-form](https://developer.remote.com/docs/how-json-schemas-work) should be considered in order to avoid + * compliance issues and to have the latest version of a country requirements. * - */ -export const getV1CompaniesCompanyId = ( - options: Options, -) => - (options.client ?? client).get< - GetV1CompaniesCompanyIdResponses, - GetV1CompaniesCompanyIdErrors, - ThrowOnError - >({ - security: [ - { scheme: 'bearer', type: 'http' }, - { scheme: 'bearer', type: 'http' }, - ], - url: '/v1/companies/{company_id}', - ...options, - }); - -/** - * Update a company + * If you are using this endpoint to build an integration, make sure you are dynamically collecting or + * displaying the latest parameters for each country by querying the _"Show form schema"_ endpoint. * - * Given an ID and a request object with new information, updates a company. + * For more information on JSON Schemas, see the **How JSON Schemas work** documentation. * - * ### Getting a company and its owner to `active` status - * If you created a company using the - * [create a company endpoint](#tag/Companies/operation/post_create_company) without all the required - * request body parameters, you can use this endpoint to provide the missing data. Once the company - * and its owner have all the necessary data, both their statuses will be set to `active` and the company - * onboarding will be marked as "completed". + * To learn how you can dynamically generate forms to display in your UI, see the documentation for + * the [json-schema-form](https://developer.remote.com/docs/how-json-schemas-form) tool. * - * The following constitutes a company with "all the necessary data": - * * Complete `address`, with valid `address`, `postal_code`, `country` and `state` parameters (Varies by country. Use the - * [show form schema endpoint](#tag/Countries/operation/get_show_form_country) to see which address parameters - * are required). - * * Company `tax_number` or `registration_number` is not nil - * * Company `name` is not nil (already required when creating the company) - * * Company has a `desired_currency` in their bank account (already required when creating the company) - * * Company has accepted terms of service (already required when creating the company) * * * ## Scopes * * | Category | Read only Scope | Write only Scope (read access implicit) | * |---|---|---| - * | Manage companies (`company_management`) | - | Manage companies (`company:write`) | + * | Manage employments (`employments`) | - | Manage employments (`employment:write`) | * */ -export const patchV1CompaniesCompanyId2 = < +export const putV2EmploymentsEmploymentIdBillingAddressDetails = < ThrowOnError extends boolean = false, >( - options: Options, + options: Options< + PutV2EmploymentsEmploymentIdBillingAddressDetailsData, + ThrowOnError + >, ) => - (options.client ?? client).patch< - PatchV1CompaniesCompanyId2Responses, - PatchV1CompaniesCompanyId2Errors, + (options.client ?? client).put< + PutV2EmploymentsEmploymentIdBillingAddressDetailsResponses, + PutV2EmploymentsEmploymentIdBillingAddressDetailsErrors, ThrowOnError >({ - security: [{ scheme: 'bearer', type: 'http' }], - url: '/v1/companies/{company_id}', + url: '/v2/employments/{employment_id}/billing_address_details', ...options, headers: { 'Content-Type': 'application/json', @@ -3731,217 +3304,184 @@ export const patchV1CompaniesCompanyId2 = < }); /** - * Update a company - * - * Given an ID and a request object with new information, updates a company. + * Delete an Incentive * - * ### Getting a company and its owner to `active` status - * If you created a company using the - * [create a company endpoint](#tag/Companies/operation/post_create_company) without all the required - * request body parameters, you can use this endpoint to provide the missing data. Once the company - * and its owner have all the necessary data, both their statuses will be set to `active` and the company - * onboarding will be marked as "completed". + * Delete an incentive. * - * The following constitutes a company with "all the necessary data": - * * Complete `address`, with valid `address`, `postal_code`, `country` and `state` parameters (Varies by country. Use the - * [show form schema endpoint](#tag/Countries/operation/get_show_form_country) to see which address parameters - * are required). - * * Company `tax_number` or `registration_number` is not nil - * * Company `name` is not nil (already required when creating the company) - * * Company has a `desired_currency` in their bank account (already required when creating the company) - * * Company has accepted terms of service (already required when creating the company) + * `one_time` incentives that have the following status **CANNOT** be deleted: + * * `processing` + * * `paid` * * * ## Scopes * * | Category | Read only Scope | Write only Scope (read access implicit) | * |---|---|---| - * | Manage companies (`company_management`) | - | Manage companies (`company:write`) | + * | Manage expenses (`employment_payments`) | - | Manage incentives (`incentive:write`) | * */ -export const patchV1CompaniesCompanyId = ( - options: Options, +export const deleteV1IncentivesId = ( + options: Options, ) => - (options.client ?? client).put< - PatchV1CompaniesCompanyIdResponses, - PatchV1CompaniesCompanyIdErrors, + (options.client ?? client).delete< + DeleteV1IncentivesIdResponses, + DeleteV1IncentivesIdErrors, ThrowOnError - >({ - security: [{ scheme: 'bearer', type: 'http' }], - url: '/v1/companies/{company_id}', - ...options, - headers: { - 'Content-Type': 'application/json', - ...options.headers, - }, - }); + >({ url: '/v1/incentives/{id}', ...options }); /** - * Show employee address - * - * Returns the authenticated employee's residential address. - * - * The employment is derived from the access token's subject — there is no - * employment id in the path. - * - * This endpoint requires country-specific data. The exact required fields vary depending on which - * country the authenticated employee's employment is in. Query the - * [Show form schema](#tag/Countries/operation/get_show_form_country) endpoint with `address_details` - * as the form name to discover the schema for a given country. - * + * Show Incentive * + * Show an Incentive's details * * ## Scopes * * | Category | Read only Scope | Write only Scope (read access implicit) | * |---|---|---| - * | Manage employments (`employments`) | View addresses (`address:read`) | Manage addresses (`address:write`) | + * | Manage expenses (`employment_payments`) | View incentives (`incentive:read`) | Manage incentives (`incentive:write`) | * */ -export const getV1EmployeeAddress = ( - options?: Options, +export const getV1IncentivesId = ( + options: Options, ) => - (options?.client ?? client).get< - GetV1EmployeeAddressResponses, - GetV1EmployeeAddressErrors, + (options.client ?? client).get< + GetV1IncentivesIdResponses, + GetV1IncentivesIdErrors, ThrowOnError - >({ - security: [{ scheme: 'bearer', type: 'http' }], - url: '/v1/employee/address', - ...options, - }); + >({ url: '/v1/incentives/{id}', ...options }); /** - * Update employee address - * - * Updates the authenticated employee's residential address. + * Update Incentive * - * The employment is derived from the access token's subject — there is no - * employment id in the path. The token must be an employee-role token - * (typically obtained via the OAuth2 assertion grant with subject - * `urn:remote-api:employee:employment:`). + * Updates an Incentive. * - * This endpoint requires country-specific data. The exact required fields vary depending on which - * country the authenticated employee's employment is in. Query the - * [Show form schema](#tag/Countries/operation/get_show_form_country) endpoint with `address_details` - * as the form name to discover the schema for a given country. + * Incentives use the currency of the employment specified provided in the `employment_id` field. * + * The API doesn't support updating paid incentives. * * * ## Scopes * * | Category | Read only Scope | Write only Scope (read access implicit) | * |---|---|---| - * | Manage employments (`employments`) | - | Manage addresses (`address:write`) | + * | Manage expenses (`employment_payments`) | - | Manage incentives (`incentive:write`) | * */ -export const putV1EmployeeAddress = ( - options?: Options, +export const patchV1IncentivesId2 = ( + options: Options, ) => - (options?.client ?? client).put< - PutV1EmployeeAddressResponses, - PutV1EmployeeAddressErrors, + (options.client ?? client).patch< + PatchV1IncentivesId2Responses, + PatchV1IncentivesId2Errors, ThrowOnError >({ - security: [{ scheme: 'bearer', type: 'http' }], - url: '/v1/employee/address', + url: '/v1/incentives/{id}', ...options, headers: { 'Content-Type': 'application/json', - ...options?.headers, + ...options.headers, }, }); /** - * Download a resignation letter + * Update Incentive + * + * Updates an Incentive. + * + * Incentives use the currency of the employment specified provided in the `employment_id` field. + * + * The API doesn't support updating paid incentives. * - * Downloads a resignation letter from an employment request. * * ## Scopes * * | Category | Read only Scope | Write only Scope (read access implicit) | * |---|---|---| - * | Manage employment documents (`employment_documents`) | View resignation letters (`resignation_letter:read`) | - | + * | Manage expenses (`employment_payments`) | - | Manage incentives (`incentive:write`) | * */ -export const getV1ResignationsOffboardingRequestIdResignationLetter = < - ThrowOnError extends boolean = false, ->( - options: Options< - GetV1ResignationsOffboardingRequestIdResignationLetterData, - ThrowOnError - >, +export const patchV1IncentivesId = ( + options: Options, ) => - (options.client ?? client).get< - GetV1ResignationsOffboardingRequestIdResignationLetterResponses, - GetV1ResignationsOffboardingRequestIdResignationLetterErrors, + (options.client ?? client).put< + PatchV1IncentivesIdResponses, + PatchV1IncentivesIdErrors, ThrowOnError >({ - security: [ - { scheme: 'bearer', type: 'http' }, - { scheme: 'bearer', type: 'http' }, - ], - url: '/v1/resignations/{offboarding_request_id}/resignation-letter', + url: '/v1/incentives/{id}', ...options, + headers: { + 'Content-Type': 'application/json', + ...options.headers, + }, }); /** - * Get basic information - * - * Returns the employment's basic information. + * Show Legal Entity Administrative details * - * This endpoint requires and returns country-specific data. The exact required and returned fields will - * vary depending on which country the employment is in. To see the list of parameters for each country, - * see the **Show form schema** endpoint under the [Countries](#tag/Countries) category. + * Show administrative details of legal entity for the authorized company specified in the request. * - * Please note that the compliance requirements for each country are subject to change according to local - * laws. Given its continual updates, using Remote's [json-schema-form](https://developer.remote.com/docs/how-json-schemas-work) should be considered in order to avoid - * compliance issues and to have the latest version of a country requirements. * - * If you are using this endpoint to build an integration, make sure you are dynamically collecting or - * displaying the latest parameters for each country by querying the _"Show form schema"_ endpoint. + * ## Scopes * - * For more information on JSON Schemas, see the **How JSON Schemas work** documentation. + * | Category | Read only Scope | Write only Scope (read access implicit) | + * |---|---|---| + * | Manage company resources (`company_admin`) | View companies (`company:read`) | Manage companies (`company:write`) | * - * To learn how you can dynamically generate forms to display in your UI, see the documentation for - * the [json-schema-form](https://developer.remote.com/docs/how-json-schemas-work) tool. + */ +export const getV1CompaniesCompanyIdLegalEntitiesLegalEntityIdAdministrativeDetails = + ( + options: Options< + GetV1CompaniesCompanyIdLegalEntitiesLegalEntityIdAdministrativeDetailsData, + ThrowOnError + >, + ) => + (options.client ?? client).get< + GetV1CompaniesCompanyIdLegalEntitiesLegalEntityIdAdministrativeDetailsResponses, + GetV1CompaniesCompanyIdLegalEntitiesLegalEntityIdAdministrativeDetailsErrors, + ThrowOnError + >({ + url: '/v1/companies/{company_id}/legal-entities/{legal_entity_id}/administrative-details', + ...options, + }); + +/** + * Update Legal Entity Administrative details * + * Update administrative details of legal entity for the authorized company specified in the request. * * * ## Scopes * * | Category | Read only Scope | Write only Scope (read access implicit) | * |---|---|---| - * | Manage employments (`employments`) | View employments (`employment:read`) | Manage employments (`employment:write`) | + * | Manage companies (`company_management`) | - | Manage companies (`company:write`) | * */ -export const getV2EmploymentsEmploymentIdBasicInformation = < - ThrowOnError extends boolean = false, ->( - options: Options< - GetV2EmploymentsEmploymentIdBasicInformationData, - ThrowOnError - >, -) => - (options.client ?? client).get< - GetV2EmploymentsEmploymentIdBasicInformationResponses, - GetV2EmploymentsEmploymentIdBasicInformationErrors, - ThrowOnError - >({ - security: [ - { scheme: 'bearer', type: 'http' }, - { scheme: 'bearer', type: 'http' }, - ], - url: '/v2/employments/{employment_id}/basic-information', - ...options, - }); +export const putV1CompaniesCompanyIdLegalEntitiesLegalEntityIdAdministrativeDetails = + ( + options: Options< + PutV1CompaniesCompanyIdLegalEntitiesLegalEntityIdAdministrativeDetailsData, + ThrowOnError + >, + ) => + (options.client ?? client).put< + PutV1CompaniesCompanyIdLegalEntitiesLegalEntityIdAdministrativeDetailsResponses, + PutV1CompaniesCompanyIdLegalEntitiesLegalEntityIdAdministrativeDetailsErrors, + ThrowOnError + >({ + url: '/v1/companies/{company_id}/legal-entities/{legal_entity_id}/administrative-details', + ...options, + headers: { + 'Content-Type': 'application/json', + ...options.headers, + }, + }); /** - * Update basic information - * - * Updates employment's basic information. + * Update bank account details * - * Supported employment statuses: `created`, `job_title_review`, `created_reserve_paid`, `created_awaiting_reserve`. + * Updates employment's bank account details. * * This endpoint requires and returns country-specific data. The exact required and returned fields will * vary depending on which country the employment is in. To see the list of parameters for each country, @@ -3957,7 +3497,7 @@ export const getV2EmploymentsEmploymentIdBasicInformation = < * For more information on JSON Schemas, see the **How JSON Schemas work** documentation. * * To learn how you can dynamically generate forms to display in your UI, see the documentation for - * the [json-schema-form](https://developer.remote.com/docs/how-json-schemas-work) tool. + * the [json-schema-form](https://developer.remote.com/docs/how-json-schemas-form) tool. * * * @@ -3968,24 +3508,20 @@ export const getV2EmploymentsEmploymentIdBasicInformation = < * | Manage employments (`employments`) | - | Manage employments (`employment:write`) | * */ -export const putV2EmploymentsEmploymentIdBasicInformation = < +export const putV2EmploymentsEmploymentIdBankAccountDetails = < ThrowOnError extends boolean = false, >( options: Options< - PutV2EmploymentsEmploymentIdBasicInformationData, + PutV2EmploymentsEmploymentIdBankAccountDetailsData, ThrowOnError >, ) => (options.client ?? client).put< - PutV2EmploymentsEmploymentIdBasicInformationResponses, - PutV2EmploymentsEmploymentIdBasicInformationErrors, + PutV2EmploymentsEmploymentIdBankAccountDetailsResponses, + PutV2EmploymentsEmploymentIdBankAccountDetailsErrors, ThrowOnError >({ - security: [ - { scheme: 'bearer', type: 'http' }, - { scheme: 'bearer', type: 'http' }, - ], - url: '/v2/employments/{employment_id}/basic-information', + url: '/v2/employments/{employment_id}/bank_account_details', ...options, headers: { 'Content-Type': 'application/json', @@ -3994,302 +3530,206 @@ export const putV2EmploymentsEmploymentIdBasicInformation = < }); /** - * Update federal taxes - * - * Updates employment's federal taxes. - * - * Requirements to update federal taxes successfully: - * * Employment should be Global Payroll - * * Employment should be in the post-enrollment state - * * Employment should belong to USA - * - * This endpoint requires and returns country-specific data. The exact required and returned fields will - * vary depending on which country the employment is in. To see the list of parameters for each country, - * see the **Show form schema** endpoint under the [Countries](#tag/Countries) category. - * - * Please note that the compliance requirements for each country are subject to change according to local - * laws. Given its continual updates, using Remote's [json-schema-form](https://developer.remote.com/docs/how-json-schemas-work) should be considered in order to avoid - * compliance issues and to have the latest version of a country requirements. - * - * If you are using this endpoint to build an integration, make sure you are dynamically collecting or - * displaying the latest parameters for each country by querying the _"Show form schema"_ endpoint. - * - * For more information on JSON Schemas, see the **How JSON Schemas work** documentation. - * - * To learn how you can dynamically generate forms to display in your UI, see the documentation for - * the [json-schema-form](https://developer.remote.com/docs/how-json-schemas-work) tool. - * + * List Contractor Invoices * + * Lists Contractor Invoice records. * * ## Scopes * * | Category | Read only Scope | Write only Scope (read access implicit) | * |---|---|---| - * | Manage employments (`employments`) | - | Manage employments (`employment:write`) | + * | Manage invoices (`invoices`) | View invoices (`invoices:read`) | Manage invoices (`invoices:write`) | * */ -export const putV1EmploymentsEmploymentIdFederalTaxes = < - ThrowOnError extends boolean = false, ->( - options: Options, +export const getV1ContractorInvoices = ( + options?: Options, ) => - (options.client ?? client).put< - PutV1EmploymentsEmploymentIdFederalTaxesResponses, - PutV1EmploymentsEmploymentIdFederalTaxesErrors, + (options?.client ?? client).get< + GetV1ContractorInvoicesResponses, + GetV1ContractorInvoicesErrors, ThrowOnError - >({ - security: [ - { scheme: 'bearer', type: 'http' }, - { scheme: 'bearer', type: 'http' }, - ], - url: '/v1/employments/{employment_id}/federal-taxes', - ...options, - headers: { - 'Content-Type': 'application/json', - ...options.headers, - }, - }); + >({ url: '/v1/contractor-invoices', ...options }); /** - * List Contract Amendment - * - * List Contract Amendment requests. - * - * ## Scopes - * - * | Category | Read only Scope | Write only Scope (read access implicit) | - * |---|---|---| - * | Manage employments (`employments`) | View contract amendments (`contract_amendment:read`) | Manage contract amendments (`contract_amendment:write`) | + * List expense categories * + * Lists the effective hierarchy of expense categories. At least one of employment_id, expense_id, or country_code must be provided. */ -export const getV1ContractAmendments = ( - options: Options, +export const getV1ExpensesCategories = ( + options?: Options, ) => - (options.client ?? client).get< - GetV1ContractAmendmentsResponses, - GetV1ContractAmendmentsErrors, + (options?.client ?? client).get< + GetV1ExpensesCategoriesResponses, + GetV1ExpensesCategoriesErrors, ThrowOnError - >({ - security: [ - { scheme: 'bearer', type: 'http' }, - { scheme: 'bearer', type: 'http' }, - ], - url: '/v1/contract-amendments', - ...options, - }); + >({ url: '/v1/expenses/categories', ...options }); /** - * Create Contract Amendment - * - * Creates a Contract Amendment request. - * - * This endpoint requires and returns country-specific data. The exact required and returned fields will - * vary depending on which country the employment is in. To see the list of parameters for each country, - * see the **Show form schema** endpoint under the [Contract Amendments](#tag/Contract-Amendments) category. - * - * Please note that the compliance requirements for each country are subject to change according to local - * laws. Given its continual updates, using Remote's [json-schema-form](https://developer.remote.com/docs/how-json-schemas-work) should be considered in order to avoid - * compliance issues and to have the latest version of a country requirements. - * - * If you are using this endpoint to build an integration, make sure you are dynamically collecting or - * displaying the latest parameters for each country by querying the _"Show form schema"_ endpoint. - * - * For more information on JSON Schemas, see the **How JSON Schemas work** documentation. - * - * To learn how you can dynamically generate forms to display in your UI, see the documentation for - * the [json-schema-form](https://developer.remote.com/docs/how-json-schemas-work) tool. - * + * List contract documents for an employment * + * Only contractor employment types are supported. Lists contract documents for a specific employment with pagination, filtering by status, and sorted by updated_at descending (latest first). * * ## Scopes * * | Category | Read only Scope | Write only Scope (read access implicit) | * |---|---|---| - * | Manage employments (`employments`) | - | Manage contract amendments (`contract_amendment:write`) | + * | Manage employment documents (`employment_documents`) | View documents (`document:read`) | Manage documents (`document:write`) | * */ -export const postV1ContractAmendments = ( - options: Options, +export const getV1EmploymentsEmploymentIdContractDocuments = < + ThrowOnError extends boolean = false, +>( + options: Options< + GetV1EmploymentsEmploymentIdContractDocumentsData, + ThrowOnError + >, ) => - (options.client ?? client).post< - PostV1ContractAmendmentsResponses, - PostV1ContractAmendmentsErrors, + (options.client ?? client).get< + GetV1EmploymentsEmploymentIdContractDocumentsResponses, + GetV1EmploymentsEmploymentIdContractDocumentsErrors, ThrowOnError - >({ - security: [ - { scheme: 'bearer', type: 'http' }, - { scheme: 'bearer', type: 'http' }, - ], - url: '/v1/contract-amendments', - ...options, - headers: { - 'Content-Type': 'application/json', - ...options.headers, - }, - }); + >({ url: '/v1/employments/{employment_id}/contract-documents', ...options }); /** - * Download the Employment Agreement for an employment - * - * Downloads a PDF of the auto-generated Employment Agreement for an employment. - * - * The document is rendered as a draft (no signatures) and is not persisted. EA preview is only - * available for countries that have a published Employment Agreement automation template — see the - * `employment_agreement_preview_available` flag on the [Countries](#tag/Countries) endpoint. + * Show contractor contract details * + * Returns the contract details JSON Schema for contractors given a country * * ## Scopes * * | Category | Read only Scope | Write only Scope (read access implicit) | * |---|---|---| - * | Manage employment documents (`employment_documents`) | View documents (`document:read`) | Manage documents (`document:write`) | + * | Manage company resources (`company_admin`) | View forms (`form:read`) | - | * */ -export const getV1EmploymentsEmploymentIdEmploymentAgreementDownload = < +export const getV1CountriesCountryCodeContractorContractDetails = < ThrowOnError extends boolean = false, >( options: Options< - GetV1EmploymentsEmploymentIdEmploymentAgreementDownloadData, + GetV1CountriesCountryCodeContractorContractDetailsData, ThrowOnError >, ) => (options.client ?? client).get< - GetV1EmploymentsEmploymentIdEmploymentAgreementDownloadResponses, - GetV1EmploymentsEmploymentIdEmploymentAgreementDownloadErrors, + GetV1CountriesCountryCodeContractorContractDetailsResponses, + GetV1CountriesCountryCodeContractorContractDetailsErrors, ThrowOnError >({ - security: [ - { scheme: 'bearer', type: 'http' }, - { scheme: 'bearer', type: 'http' }, - ], - url: '/v1/employments/{employment_id}/employment-agreement/download', + url: '/v1/countries/{country_code}/contractor-contract-details', ...options, }); /** - * Show Company Payroll Runs - * - * Given an ID, shows a payroll run. - * `employee_details` field is deprecated in favour of the `employee_details` endpoint and will be removed in the future. - * - * - * ## Scopes - * - * | Category | Read only Scope | Write only Scope (read access implicit) | - * |---|---|---| - * | Manage payroll runs (`payroll`) | View payroll runs (`payroll_run:read`) | - | + * Get user by ID via SCIM v2.0 * + * Retrieves a single user for the authenticated company by user ID */ -export const getV1PayrollRunsPayrollRunId = < - ThrowOnError extends boolean = false, ->( - options: Options, +export const getV1ScimV2UsersId = ( + options: Options, ) => (options.client ?? client).get< - GetV1PayrollRunsPayrollRunIdResponses, - GetV1PayrollRunsPayrollRunIdErrors, + GetV1ScimV2UsersIdResponses, + GetV1ScimV2UsersIdErrors, ThrowOnError >({ - security: [ - { scheme: 'bearer', type: 'http' }, - { scheme: 'bearer', type: 'http' }, - ], - url: '/v1/payroll-runs/{payroll_run_id}', + security: [{ scheme: 'bearer', type: 'http' }], + url: '/v1/scim/v2/Users/{id}', ...options, }); /** - * Download a receipt + * List employment files * - * Downloads an expense receipt. + * Lists files associated with a specific employment. * - * Deprecated since late February 2024 in favour of **[Download a receipt by id](#tag/Expenses/operation/get_download_by_id_expense_receipt)** endpoint. + * Supports filtering by file type and sub_type. * * * ## Scopes * * | Category | Read only Scope | Write only Scope (read access implicit) | * |---|---|---| - * | Manage expenses (`employment_payments`) | View expenses (`expense:read`) | Manage expenses (`expense:write`) | - * + * | Manage employment documents (`employment_documents`) | View documents (`document:read`) | Manage documents (`document:write`) | * - * @deprecated */ -export const getV1ExpensesExpenseIdReceipt = < +export const getV1EmploymentsEmploymentIdFiles = < ThrowOnError extends boolean = false, >( - options: Options, + options: Options, ) => (options.client ?? client).get< - GetV1ExpensesExpenseIdReceiptResponses, - GetV1ExpensesExpenseIdReceiptErrors, + GetV1EmploymentsEmploymentIdFilesResponses, + GetV1EmploymentsEmploymentIdFilesErrors, ThrowOnError - >({ - security: [ - { scheme: 'bearer', type: 'http' }, - { scheme: 'bearer', type: 'http' }, - ], - url: '/v1/expenses/{expense_id}/receipt', - ...options, - }); + >({ url: '/v1/employments/{employment_id}/files', ...options }); /** - * Show travel letter request + * Manage contractor plus subscription + * + * Endpoint that can be used to upgrade, assign or downgrade a contractor's subscription. + * This can be used when company admins desire to assign someone to the Contractor Plus plan, + * but also to change the contractor's subscription between Plus and Standard. * - * Show a single travel letter request. * * ## Scopes * * | Category | Read only Scope | Write only Scope (read access implicit) | * |---|---|---| - * | Manage employment documents (`employment_documents`) | View travel letters (`travel_letter:read`) | Manage travel letters (`travel_letter:write`) | + * | Manage employments (`employments`) | - | Manage employments (`employment:write`) | * */ -export const getV1TravelLetterRequestsId = < - ThrowOnError extends boolean = false, ->( - options: Options, -) => - (options.client ?? client).get< - GetV1TravelLetterRequestsIdResponses, - GetV1TravelLetterRequestsIdErrors, - ThrowOnError - >({ - security: [ - { scheme: 'bearer', type: 'http' }, - { scheme: 'bearer', type: 'http' }, - ], - url: '/v1/travel-letter-requests/{id}', - ...options, - }); +export const postV1ContractorsEmploymentsEmploymentIdContractorPlusSubscription = + ( + options: Options< + PostV1ContractorsEmploymentsEmploymentIdContractorPlusSubscriptionData, + ThrowOnError + >, + ) => + (options.client ?? client).post< + PostV1ContractorsEmploymentsEmploymentIdContractorPlusSubscriptionResponses, + PostV1ContractorsEmploymentsEmploymentIdContractorPlusSubscriptionErrors, + ThrowOnError + >({ + url: '/v1/contractors/employments/{employment_id}/contractor-plus-subscription', + ...options, + headers: { + 'Content-Type': 'application/json', + ...options.headers, + }, + }); /** - * Updates a travel letter request + * Submit eligibility questionnaire + * + * Submits an eligibility questionnaire for a contractor employment. + * + * The questionnaire determines if the contractor is eligible for certain products or features. + * The responses are validated against the JSON schema for the questionnaire type. + * + * **Requirements:** + * - Employment must be of type `contractor` + * - Employment must be in `created` status + * - Responses must conform to the questionnaire JSON schema * - * Updates a travel letter request * * ## Scopes * * | Category | Read only Scope | Write only Scope (read access implicit) | * |---|---|---| - * | Manage employment documents (`employment_documents`) | - | Manage travel letters (`travel_letter:write`) | + * | Manage employments (`employments`) | - | Manage employments (`employment:write`) | * */ -export const patchV1TravelLetterRequestsId2 = < +export const postV1ContractorsEligibilityQuestionnaire = < ThrowOnError extends boolean = false, >( - options: Options, + options: Options, ) => - (options.client ?? client).patch< - PatchV1TravelLetterRequestsId2Responses, - PatchV1TravelLetterRequestsId2Errors, + (options.client ?? client).post< + PostV1ContractorsEligibilityQuestionnaireResponses, + PostV1ContractorsEligibilityQuestionnaireErrors, ThrowOnError >({ - security: [ - { scheme: 'bearer', type: 'http' }, - { scheme: 'bearer', type: 'http' }, - ], - url: '/v1/travel-letter-requests/{id}', + url: '/v1/contractors/eligibility-questionnaire', ...options, headers: { 'Content-Type': 'application/json', @@ -4298,32 +3738,51 @@ export const patchV1TravelLetterRequestsId2 = < }); /** - * Updates a travel letter request + * Update basic information + * + * Updates employment's basic information. + * + * Supported employment statuses: `created`, `job_title_review`, `created_reserve_paid`, `created_awaiting_reserve`. + * + * This endpoint requires and returns country-specific data. The exact required and returned fields will + * vary depending on which country the employment is in. To see the list of parameters for each country, + * see the **Show form schema** endpoint under the [Countries](#tag/Countries) category. + * + * Please note that the compliance requirements for each country are subject to change according to local + * laws. Given its continual updates, using Remote's [json-schema-form](https://developer.remote.com/docs/how-json-schemas-work) should be considered in order to avoid + * compliance issues and to have the latest version of a country requirements. + * + * If you are using this endpoint to build an integration, make sure you are dynamically collecting or + * displaying the latest parameters for each country by querying the _"Show form schema"_ endpoint. + * + * For more information on JSON Schemas, see the **How JSON Schemas work** documentation. + * + * To learn how you can dynamically generate forms to display in your UI, see the documentation for + * the [json-schema-form](https://developer.remote.com/docs/how-json-schemas-work) tool. + * * - * Updates a travel letter request * * ## Scopes * * | Category | Read only Scope | Write only Scope (read access implicit) | * |---|---|---| - * | Manage employment documents (`employment_documents`) | - | Manage travel letters (`travel_letter:write`) | + * | Manage employments (`employments`) | - | Manage employments (`employment:write`) | * */ -export const patchV1TravelLetterRequestsId = < +export const putV1EmploymentsEmploymentIdBasicInformation = < ThrowOnError extends boolean = false, >( - options: Options, + options: Options< + PutV1EmploymentsEmploymentIdBasicInformationData, + ThrowOnError + >, ) => (options.client ?? client).put< - PatchV1TravelLetterRequestsIdResponses, - PatchV1TravelLetterRequestsIdErrors, + PutV1EmploymentsEmploymentIdBasicInformationResponses, + PutV1EmploymentsEmploymentIdBasicInformationErrors, ThrowOnError >({ - security: [ - { scheme: 'bearer', type: 'http' }, - { scheme: 'bearer', type: 'http' }, - ], - url: '/v1/travel-letter-requests/{id}', + url: '/v1/employments/{employment_id}/basic_information', ...options, headers: { 'Content-Type': 'application/json', @@ -4332,85 +3791,58 @@ export const patchV1TravelLetterRequestsId = < }); /** - * Show Time Off Balance - * - * Shows the time off balance for the given employment_id. + * Show a contractor of record (COR) termination request * - * Deprecated since February 2025 in favour of **[List Leave Policies Summary](#tag/Leave-Policies/operation/get_index_leave_policies_summary)** endpoint. + * Retrieves a Contractor of Record termination request by ID. * * * ## Scopes * * | Category | Read only Scope | Write only Scope (read access implicit) | * |---|---|---| - * | Manage timeoffs (`time_and_attendance`) | View timeoffs (`timeoff:read`) | Manage timeoffs (`timeoff:write`) | - * - * - * @deprecated - */ -export const getV1TimeoffBalancesEmploymentId = < - ThrowOnError extends boolean = false, ->( - options: Options, -) => - (options.client ?? client).get< - GetV1TimeoffBalancesEmploymentIdResponses, - GetV1TimeoffBalancesEmploymentIdErrors, - ThrowOnError - >({ - security: [ - { scheme: 'bearer', type: 'http' }, - { scheme: 'bearer', type: 'http' }, - ], - url: '/v1/timeoff-balances/{employment_id}', - ...options, - }); - -/** - * List expense categories + * | Manage employments (`employments`) | View employments (`employment:read`) | Manage employments (`employment:write`) | * - * Lists the effective hierarchy of expense categories. At least one of employment_id, expense_id, or country_code must be provided. */ -export const getV1ExpensesCategories = ( - options?: Options, -) => - (options?.client ?? client).get< - GetV1ExpensesCategoriesResponses, - GetV1ExpensesCategoriesErrors, - ThrowOnError - >({ - security: [ - { scheme: 'bearer', type: 'http' }, - { scheme: 'bearer', type: 'http' }, - ], - url: '/v1/expenses/categories', - ...options, - }); +export const getV1ContractorsEmploymentsEmploymentIdCorTerminationRequestsTerminationRequestId = + ( + options: Options< + GetV1ContractorsEmploymentsEmploymentIdCorTerminationRequestsTerminationRequestIdData, + ThrowOnError + >, + ) => + (options.client ?? client).get< + GetV1ContractorsEmploymentsEmploymentIdCorTerminationRequestsTerminationRequestIdResponses, + GetV1ContractorsEmploymentsEmploymentIdCorTerminationRequestsTerminationRequestIdErrors, + ThrowOnError + >({ + url: '/v1/contractors/employments/{employment_id}/cor-termination-requests/{termination_request_id}', + ...options, + }); /** - * Cancel Time Off as Employee - * - * Cancels a Time Off record as Employee + * Create a legal entity * - * ## Scopes + * Create a new legal entity for a company in a given country, with KYB automatically passed. * - * | Category | Read only Scope | Write only Scope (read access implicit) | - * |---|---|---| - * | Manage timeoffs (`time_and_attendance`) | - | Manage timeoffs (`timeoff:write`) | + * The entity is created with active status and can be set as the company's default + * using the reassign default entity endpoint. + * This endpoint is only available in Sandbox, otherwise it will respond with a 404. * */ -export const postV1EmployeeTimeoffIdCancel = < +export const postV1SandboxCompaniesCompanyIdLegalEntities = < ThrowOnError extends boolean = false, >( - options: Options, + options: Options< + PostV1SandboxCompaniesCompanyIdLegalEntitiesData, + ThrowOnError + >, ) => (options.client ?? client).post< - PostV1EmployeeTimeoffIdCancelResponses, - PostV1EmployeeTimeoffIdCancelErrors, + PostV1SandboxCompaniesCompanyIdLegalEntitiesResponses, + PostV1SandboxCompaniesCompanyIdLegalEntitiesErrors, ThrowOnError >({ - security: [{ scheme: 'bearer', type: 'http' }], - url: '/v1/employee/timeoff/{id}/cancel', + url: '/v1/sandbox/companies/{company_id}/legal-entities', ...options, headers: { 'Content-Type': 'application/json', @@ -4419,40 +3851,13 @@ export const postV1EmployeeTimeoffIdCancel = < }); /** - * Show form schema - * - * Returns the json schema of a supported form. Possible form names are: - * ``` - * - address_details - * - administrative_details - * - bank_account_details - * - employment_basic_information - * - contractor_basic_information - * - contractor_contract_details - * - billing_address_details - * - contract_details - * - emergency_contact - * - emergency_contact_details - * - employment_document_details - * - personal_details - * - pricing_plan_details - * - company_basic_information - * - global_payroll_administrative_details - * - global_payroll_bank_account_details - * - global_payroll_basic_information - * - global_payroll_contract_details - * - global_payroll_federal_taxes - * - global_payroll_state_taxes - * - global_payroll_personal_details - * - benefit_renewal_request - * - hris_personal_details + * Show employee personal details * - * ``` + * Returns the authenticated employee's personal details. * - * Most forms require a company access token, as they are dependent on certain - * properties of companies and their current employments. However, the `address_details` - * and `company_basic_information` forms can be accessed using client_credentials - * authentication (without a company). + * This endpoint requires country-specific data. Query the + * [Show form schema](#tag/Countries/operation/get_show_form_country) endpoint with `personal_details` + * as the form name to discover the schema for a given country. * * * @@ -4460,140 +3865,145 @@ export const postV1EmployeeTimeoffIdCancel = < * * | Category | Read only Scope | Write only Scope (read access implicit) | * |---|---|---| - * | Manage company resources (`company_admin`) | View forms (`form:read`) | - | + * | Manage employments (`employments`) | View personal details (`personal_detail:read`) | Manage personal details (`personal_detail:write`) | * */ -export const getV1CountriesCountryCodeForm = < +export const getV1EmployeePersonalDetails = < ThrowOnError extends boolean = false, >( - options: Options, + options?: Options, ) => - (options.client ?? client).get< - GetV1CountriesCountryCodeFormResponses, - GetV1CountriesCountryCodeFormErrors, + (options?.client ?? client).get< + GetV1EmployeePersonalDetailsResponses, + GetV1EmployeePersonalDetailsErrors, ThrowOnError - >({ - security: [ - { scheme: 'bearer', type: 'http' }, - { scheme: 'bearer', type: 'http' }, - { scheme: 'bearer', type: 'http' }, - ], - url: '/v1/countries/{country_code}/{form}', - ...options, - }); + >({ url: '/v1/employee/personal-details', ...options }); /** - * Download file + * Update employee personal details + * + * Updates the authenticated employee's personal details (date of birth, + * national ID, nationality, etc.). + * + * This endpoint requires country-specific data. Query the + * [Show form schema](#tag/Countries/operation/get_show_form_country) endpoint with `personal_details` + * as the form name to discover the schema for a given country. * - * Downloads a file. * * * ## Scopes * * | Category | Read only Scope | Write only Scope (read access implicit) | * |---|---|---| - * | Manage employment documents (`employment_documents`) | View documents (`document:read`) | Manage documents (`document:write`) | + * | Manage employments (`employments`) | - | Manage personal details (`personal_detail:write`) | * */ -export const getV1FilesId = ( - options: Options, +export const putV1EmployeePersonalDetails = < + ThrowOnError extends boolean = false, +>( + options?: Options, ) => - (options.client ?? client).get< - GetV1FilesIdResponses, - GetV1FilesIdErrors, + (options?.client ?? client).put< + PutV1EmployeePersonalDetailsResponses, + PutV1EmployeePersonalDetailsErrors, ThrowOnError >({ - security: [ - { scheme: 'bearer', type: 'http' }, - { scheme: 'bearer', type: 'http' }, - ], - url: '/v1/files/{id}', + url: '/v1/employee/personal-details', ...options, + headers: { + 'Content-Type': 'application/json', + ...options?.headers, + }, }); /** - * Show Contract Amendment - * - * Show a single Contract Amendment request. - * - * ## Scopes - * - * | Category | Read only Scope | Write only Scope (read access implicit) | - * |---|---|---| - * | Manage employments (`employments`) | View contract amendments (`contract_amendment:read`) | Manage contract amendments (`contract_amendment:write`) | + * Payroll processing details data API resource * + * API to retrieve the run details of a pay group */ -export const getV1ContractAmendmentsId = ( - options: Options, +export const getV1WdGphPayDetailData = ( + options: Options, ) => (options.client ?? client).get< - GetV1ContractAmendmentsIdResponses, - GetV1ContractAmendmentsIdErrors, + GetV1WdGphPayDetailDataResponses, + GetV1WdGphPayDetailDataErrors, ThrowOnError >({ - security: [ - { scheme: 'bearer', type: 'http' }, - { scheme: 'bearer', type: 'http' }, - ], - url: '/v1/contract-amendments/{id}', + security: [{ scheme: 'bearer', type: 'http' }], + url: '/v1/wd/gph/payDetailData', ...options, }); /** - * List Company Managers + * Show region fields * - * List all company managers of an integration. If filtered by the company_id param, - * it lists only company managers belonging to the specified company. + * Returns required fields JSON Schema for a given region. These are required in order to calculate + * the cost of employment for the region. These fields are based on employer contributions that are associated + * with the region or any of it's parent regions. + */ +export const getV1CostCalculatorRegionsSlugFields = < + ThrowOnError extends boolean = false, +>( + options: Options, +) => + (options.client ?? client).get< + GetV1CostCalculatorRegionsSlugFieldsResponses, + GetV1CostCalculatorRegionsSlugFieldsErrors, + ThrowOnError + >({ url: '/v1/cost-calculator/regions/{slug}/fields', ...options }); + +/** + * Cancel onboarding + * + * Cancel onboarding. + * + * Requirements for the cancellation to succeed: + * + * * Employment has to be in `invited`, `created`, `created_awaiting_reserve`, `created_reserve_paid`, `pre_hire` status + * * Employee must not have signed the employment contract * * * ## Scopes * * | Category | Read only Scope | Write only Scope (read access implicit) | * |---|---|---| - * | Manage company resources (`company_admin`) | View managers (`company_manager:read`) | Manage managers (`company_manager:write`) | + * | Manage employments (`employments`) | - | Manage onboarding (`onboarding:write`) | * */ -export const getV1CompanyManagers = ( - options: Options, +export const postV1CancelOnboardingEmploymentId = < + ThrowOnError extends boolean = false, +>( + options: Options, ) => - (options.client ?? client).get< - GetV1CompanyManagersResponses, - GetV1CompanyManagersErrors, + (options.client ?? client).post< + PostV1CancelOnboardingEmploymentIdResponses, + PostV1CancelOnboardingEmploymentIdErrors, ThrowOnError - >({ - security: [ - { scheme: 'bearer', type: 'http' }, - { scheme: 'bearer', type: 'http' }, - ], - url: '/v1/company-managers', - ...options, - }); + >({ url: '/v1/cancel-onboarding/{employment_id}', ...options }); /** - * Create and invite a Company Manager + * Cancel Time Off as Employee * - * Create a Company Manager and sends the invitation email for signing in to the Remote Platform. + * Cancels a Time Off record as Employee * * ## Scopes * * | Category | Read only Scope | Write only Scope (read access implicit) | * |---|---|---| - * | Manage company resources (`company_admin`) | - | Manage managers (`company_manager:write`) | + * | Manage timeoffs (`time_and_attendance`) | - | Manage timeoffs (`timeoff:write`) | * */ -export const postV1CompanyManagers = ( - options: Options, +export const postV1EmployeeTimeoffIdCancel = < + ThrowOnError extends boolean = false, +>( + options: Options, ) => (options.client ?? client).post< - PostV1CompanyManagersResponses, - PostV1CompanyManagersErrors, + PostV1EmployeeTimeoffIdCancelResponses, + PostV1EmployeeTimeoffIdCancelErrors, ThrowOnError >({ - security: [ - { scheme: 'bearer', type: 'http' }, - { scheme: 'bearer', type: 'http' }, - ], - url: '/v1/company-managers', + url: '/v1/employee/timeoff/{id}/cancel', ...options, headers: { 'Content-Type': 'application/json', @@ -4602,217 +4012,139 @@ export const postV1CompanyManagers = ( }); /** - * List countries for Cost Calculator + * Download a receipt * - * Lists active and processing countries - */ -export const getV1CostCalculatorCountries = < - ThrowOnError extends boolean = false, ->( - options?: Options, -) => - (options?.client ?? client).get< - GetV1CostCalculatorCountriesResponses, - unknown, - ThrowOnError - >({ - security: [ - { scheme: 'bearer', type: 'http' }, - { scheme: 'bearer', type: 'http' }, - { scheme: 'bearer', type: 'http' }, - { scheme: 'bearer', type: 'http' }, - ], - url: '/v1/cost-calculator/countries', - ...options, - }); - -/** - * Decline Identity Verification + * Downloads an expense receipt. * - * Declines the identity verification of an employee. + * Deprecated since late February 2024 in favour of **[Download a receipt by id](#tag/Expenses/operation/get_download_by_id_expense_receipt)** endpoint. * * * ## Scopes * * | Category | Read only Scope | Write only Scope (read access implicit) | * |---|---|---| - * | Manage employment documents (`employment_documents`) | - | Manage identity verification (`identity_verification:write`) | + * | Manage expenses (`employment_payments`) | View expenses (`expense:read`) | Manage expenses (`expense:write`) | * + * + * @deprecated */ -export const postV1IdentityVerificationEmploymentIdDecline = < +export const getV1ExpensesExpenseIdReceipt = < ThrowOnError extends boolean = false, >( - options: Options< - PostV1IdentityVerificationEmploymentIdDeclineData, - ThrowOnError - >, + options: Options, ) => - (options.client ?? client).post< - PostV1IdentityVerificationEmploymentIdDeclineResponses, - PostV1IdentityVerificationEmploymentIdDeclineErrors, + (options.client ?? client).get< + GetV1ExpensesExpenseIdReceiptResponses, + GetV1ExpensesExpenseIdReceiptErrors, ThrowOnError - >({ - security: [ - { scheme: 'bearer', type: 'http' }, - { scheme: 'bearer', type: 'http' }, - ], - url: '/v1/identity-verification/{employment_id}/decline', - ...options, - }); + >({ url: '/v1/expenses/{expense_id}/receipt', ...options }); /** - * Retrieve a pre-onboarding document with its rendered PDF content + * List Benefit Offers * - * Returns the rendered contract PDF (base64-encoded) and the list of signatories for the given - * pre-onboarding document. The `content` field is prefixed with `data:application/pdf;base64,` so - * it can be embedded directly in a document viewer. + * List benefit offers for each country. * * * ## Scopes * * | Category | Read only Scope | Write only Scope (read access implicit) | * |---|---|---| - * | Manage employment documents (`employment_documents`) | View documents (`document:read`) | Manage documents (`document:write`) | + * | Manage company resources (`company_admin`) | View benefit offers (`benefit_offer:read`) | Manage benefit offers (`benefit_offer:write`) | * */ -export const getV1OnboardingEmploymentsEmploymentIdPreOnboardingDocumentsId = < +export const getV1BenefitOffersCountrySummaries = < ThrowOnError extends boolean = false, >( - options: Options< - GetV1OnboardingEmploymentsEmploymentIdPreOnboardingDocumentsIdData, - ThrowOnError - >, + options: Options, ) => (options.client ?? client).get< - GetV1OnboardingEmploymentsEmploymentIdPreOnboardingDocumentsIdResponses, - GetV1OnboardingEmploymentsEmploymentIdPreOnboardingDocumentsIdErrors, + GetV1BenefitOffersCountrySummariesResponses, + GetV1BenefitOffersCountrySummariesErrors, ThrowOnError - >({ - security: [ - { scheme: 'bearer', type: 'http' }, - { scheme: 'bearer', type: 'http' }, - ], - url: '/v1/onboarding/employments/{employment_id}/pre-onboarding-documents/{id}', - ...options, - }); + >({ url: '/v1/benefit-offers/country-summaries', ...options }); /** - * Show engagement agreement details - * - * Returns the engagement agreement details JSON Schema for a country. Only DEU country is supported for now. + * List Leave Policies Details * + * Describe the leave policies (custom or not) for a given employment * * ## Scopes * * | Category | Read only Scope | Write only Scope (read access implicit) | * |---|---|---| - * | Manage company resources (`company_admin`) | View forms (`form:read`) | - | + * | Manage timeoffs (`time_and_attendance`) | View timeoffs (`timeoff:read`) | Manage timeoffs (`timeoff:write`) | * */ -export const getV1CountriesCountryCodeEngagementAgreementDetails = < +export const getV1LeavePoliciesDetailsEmploymentId = < ThrowOnError extends boolean = false, >( - options: Options< - GetV1CountriesCountryCodeEngagementAgreementDetailsData, - ThrowOnError - >, + options: Options, ) => (options.client ?? client).get< - GetV1CountriesCountryCodeEngagementAgreementDetailsResponses, - GetV1CountriesCountryCodeEngagementAgreementDetailsErrors, + GetV1LeavePoliciesDetailsEmploymentIdResponses, + GetV1LeavePoliciesDetailsEmploymentIdErrors, ThrowOnError - >({ - security: [ - { scheme: 'bearer', type: 'http' }, - { scheme: 'bearer', type: 'http' }, - ], - url: '/v1/countries/{country_code}/engagement-agreement-details', - ...options, - }); + >({ url: '/v1/leave-policies/details/{employment_id}', ...options }); /** - * List Billing Documents + * List work authorization requests * - * List billing documents for a company + * List work authorization requests. * * ## Scopes * * | Category | Read only Scope | Write only Scope (read access implicit) | * |---|---|---| - * | Manage invoices (`invoices`) | View invoices (`invoices:read`) | Manage invoices (`invoices:write`) | + * | Manage employments (`employments`) | View work authorizations (`work_authorization:read`) | Manage work authorizations (`work_authorization:write`) | * */ -export const getV1BillingDocuments = ( - options: Options, +export const getV1WorkAuthorizationRequests = < + ThrowOnError extends boolean = false, +>( + options?: Options, ) => - (options.client ?? client).get< - GetV1BillingDocumentsResponses, - GetV1BillingDocumentsErrors, + (options?.client ?? client).get< + GetV1WorkAuthorizationRequestsResponses, + GetV1WorkAuthorizationRequestsErrors, ThrowOnError - >({ - security: [ - { scheme: 'bearer', type: 'http' }, - { scheme: 'bearer', type: 'http' }, - ], - url: '/v1/billing-documents', - ...options, - }); + >({ url: '/v1/work-authorization-requests', ...options }); /** - * Delete a Webhook Callback - * - * Delete a callback previously registered for webhooks + * Get employment benefit offers * * ## Scopes * * | Category | Read only Scope | Write only Scope (read access implicit) | * |---|---|---| - * | Manage company resources (`company_admin`) | - | Manage webhooks (`webhook:write`) | + * | Manage company resources (`company_admin`) | View benefit offers (`benefit_offer:read`) | Manage benefit offers (`benefit_offer:write`) | * */ -export const deleteV1WebhookCallbacksId = < +export const getV1EmploymentsEmploymentIdBenefitOffers = < ThrowOnError extends boolean = false, >( - options: Options, + options: Options, ) => - (options.client ?? client).delete< - DeleteV1WebhookCallbacksIdResponses, - DeleteV1WebhookCallbacksIdErrors, + (options.client ?? client).get< + GetV1EmploymentsEmploymentIdBenefitOffersResponses, + GetV1EmploymentsEmploymentIdBenefitOffersErrors, ThrowOnError - >({ - security: [ - { scheme: 'bearer', type: 'http' }, - { scheme: 'bearer', type: 'http' }, - ], - url: '/v1/webhook-callbacks/{id}', - ...options, - }); + >({ url: '/v1/employments/{employment_id}/benefit-offers', ...options }); /** - * Update a Webhook Callback - * - * Update a callback previously registered for webhooks - * - * ## Scopes - * - * | Category | Read only Scope | Write only Scope (read access implicit) | - * |---|---|---| - * | Manage company resources (`company_admin`) | - | Manage webhooks (`webhook:write`) | - * + * Upserts employment benefit offers */ -export const patchV1WebhookCallbacksId = ( - options: Options, +export const putV1EmploymentsEmploymentIdBenefitOffers = < + ThrowOnError extends boolean = false, +>( + options: Options, ) => - (options.client ?? client).patch< - PatchV1WebhookCallbacksIdResponses, - PatchV1WebhookCallbacksIdErrors, + (options.client ?? client).put< + PutV1EmploymentsEmploymentIdBenefitOffersResponses, + PutV1EmploymentsEmploymentIdBenefitOffersErrors, ThrowOnError >({ - security: [ - { scheme: 'bearer', type: 'http' }, - { scheme: 'bearer', type: 'http' }, - ], - url: '/v1/webhook-callbacks/{id}', + security: [{ scheme: 'bearer', type: 'http' }], + url: '/v1/employments/{employment_id}/benefit-offers', ...options, headers: { 'Content-Type': 'application/json', @@ -4821,76 +4153,71 @@ export const patchV1WebhookCallbacksId = ( }); /** - * Submit employee federal taxes + * List employments * - * Submits the authenticated employee's US federal tax (W-4) details. + * Lists all employments, except for the deleted ones. * - * Available for US Global Payroll employees once they reach the - * post-enrollment state. Calls made before then return a 404. + * This endpoint requires and returns country-specific data. The exact required and returned fields will + * vary depending on which country the employment is in. To see the list of parameters for each country, + * see the **Show form schema** endpoint under the [Countries](#tag/Countries) category. * - * This endpoint requires country-specific data. Query the - * [Show form schema](#tag/Countries/operation/get_show_form_country) endpoint with `global_payroll_federal_taxes` - * as the form name to discover the schema for a given country. + * Please note that the compliance requirements for each country are subject to change according to local + * laws. Given its continual updates, using Remote's [json-schema-form](https://developer.remote.com/docs/how-json-schemas-work) should be considered in order to avoid + * compliance issues and to have the latest version of a country requirements. * + * If you are using this endpoint to build an integration, make sure you are dynamically collecting or + * displaying the latest parameters for each country by querying the _"Show form schema"_ endpoint. * + * For more information on JSON Schemas, see the **How JSON Schemas work** documentation. * - * ## Scopes + * To learn how you can dynamically generate forms to display in your UI, see the documentation for + * the [json-schema-form](https://developer.remote.com/docs/how-json-schemas-work) tool. * - * | Category | Read only Scope | Write only Scope (read access implicit) | - * |---|---|---| - * | Manage employments (`employments`) | - | Manage personal details (`personal_detail:write`) | * */ -export const putV1EmployeeFederalTaxes = ( - options?: Options, +export const getV1Employments = ( + options: Options, ) => - (options?.client ?? client).put< - PutV1EmployeeFederalTaxesResponses, - PutV1EmployeeFederalTaxesErrors, + (options.client ?? client).get< + GetV1EmploymentsResponses, + GetV1EmploymentsErrors, ThrowOnError >({ security: [{ scheme: 'bearer', type: 'http' }], - url: '/v1/employee/federal-taxes', + url: '/v1/employments', ...options, - headers: { - 'Content-Type': 'application/json', - ...options?.headers, - }, }); /** - * List timesheets for the authenticated employee + * Create employment * - * Returns a paginated list of timesheets for the authenticated employee. + * Creates an employment. We support creating employees and contractors. * - * ## Scopes + * ## Global Payroll Employees * - * | Category | Read only Scope | Write only Scope (read access implicit) | - * |---|---|---| - * | Manage timeoffs (`time_and_attendance`) | View timesheets (`timesheet:read`) | Manage timesheets (`timesheet:write`) | + * To create a Global Payroll employee, pass `global_payroll_employee` as the `type` parameter, + * and provide the slug of the specific legal entity that the employee will be engaged by and billed to as the `engaged_by_entity_slug` parameter. * - */ -export const getV1EmployeeTimesheets = ( - options?: Options, -) => - (options?.client ?? client).get< - GetV1EmployeeTimesheetsResponses, - GetV1EmployeeTimesheetsErrors, - ThrowOnError - >({ - security: [{ scheme: 'bearer', type: 'http' }], - url: '/v1/employee/timesheets', - ...options, - }); - -/** - * Update emergency contact + * ## HRIS Employees * - * Updates the employment's emergency contact details. + * To create a HRIS employee, pass `hris` as the `type` parameter. + * + * This endpoint requires and returns country-specific data. The exact required and returned fields will + * vary depending on which country the employment is in. To see the list of parameters for each country, + * see the **Show form schema** endpoint under the [Countries](#tag/Countries) category. + * + * Please note that the compliance requirements for each country are subject to change according to local + * laws. Given its continual updates, using Remote's [json-schema-form](https://developer.remote.com/docs/how-json-schemas-work) should be considered in order to avoid + * compliance issues and to have the latest version of a country requirements. + * + * If you are using this endpoint to build an integration, make sure you are dynamically collecting or + * displaying the latest parameters for each country by querying the _"Show form schema"_ endpoint. + * + * For more information on JSON Schemas, see the **How JSON Schemas work** documentation. + * + * To learn how you can dynamically generate forms to display in your UI, see the documentation for + * the [json-schema-form](https://developer.remote.com/docs/how-json-schemas-work) tool. * - * This endpoint requires country-specific data. Query the **Show form schema** endpoint - * passing the country code and `emergency_contact_details` as path parameters to see - * the required fields for a given country. * * * ## Scopes @@ -4900,24 +4227,15 @@ export const getV1EmployeeTimesheets = ( * | Manage employments (`employments`) | - | Manage employments (`employment:write`) | * */ -export const putV2EmploymentsEmploymentIdEmergencyContact = < - ThrowOnError extends boolean = false, ->( - options: Options< - PutV2EmploymentsEmploymentIdEmergencyContactData, - ThrowOnError - >, +export const postV1Employments = ( + options: Options, ) => - (options.client ?? client).put< - PutV2EmploymentsEmploymentIdEmergencyContactResponses, - PutV2EmploymentsEmploymentIdEmergencyContactErrors, + (options.client ?? client).post< + PostV1EmploymentsResponses, + PostV1EmploymentsErrors, ThrowOnError >({ - security: [ - { scheme: 'bearer', type: 'http' }, - { scheme: 'bearer', type: 'http' }, - ], - url: '/v2/employments/{employment_id}/emergency-contact', + url: '/v1/employments', ...options, headers: { 'Content-Type': 'application/json', @@ -4926,88 +4244,81 @@ export const putV2EmploymentsEmploymentIdEmergencyContact = < }); /** - * List travel letter requests + * Show Time Off * - * List travel letter requests. + * Shows a single Time Off record * * ## Scopes * * | Category | Read only Scope | Write only Scope (read access implicit) | * |---|---|---| - * | Manage employment documents (`employment_documents`) | View travel letters (`travel_letter:read`) | Manage travel letters (`travel_letter:write`) | + * | Manage timeoffs (`time_and_attendance`) | View timeoffs (`timeoff:read`) | Manage timeoffs (`timeoff:write`) | * */ -export const getV1TravelLetterRequests = ( - options?: Options, +export const getV1TimeoffId = ( + options: Options, ) => - (options?.client ?? client).get< - GetV1TravelLetterRequestsResponses, - GetV1TravelLetterRequestsErrors, + (options.client ?? client).get< + GetV1TimeoffIdResponses, + GetV1TimeoffIdErrors, ThrowOnError - >({ - security: [ - { scheme: 'bearer', type: 'http' }, - { scheme: 'bearer', type: 'http' }, - ], - url: '/v1/travel-letter-requests', - ...options, - }); + >({ url: '/v1/timeoff/{id}', ...options }); /** - * List Benefit Renewal Requests + * Update Time Off + * + * Updates a Time Off record. + * Warning: Updating the status of a time off through this endpoint is deprecated and will be removed on January 13, 2025. + * To approve or cancel an approved time off, use the `/approve` and `/cancel` endpoints instead. * - * List Benefit Renewal Requests for each country. * * ## Scopes * * | Category | Read only Scope | Write only Scope (read access implicit) | * |---|---|---| - * | Manage company resources (`company_admin`) | View benefit renewals (`benefit_renewal:read`) | Manage benefit renewals (`benefit_renewal:write`) | + * | Manage timeoffs (`time_and_attendance`) | - | Manage timeoffs (`timeoff:write`) | * */ -export const getV1BenefitRenewalRequests = < - ThrowOnError extends boolean = false, ->( - options: Options, +export const patchV1TimeoffId2 = ( + options: Options, ) => - (options.client ?? client).get< - GetV1BenefitRenewalRequestsResponses, - GetV1BenefitRenewalRequestsErrors, + (options.client ?? client).patch< + PatchV1TimeoffId2Responses, + PatchV1TimeoffId2Errors, ThrowOnError >({ - security: [ - { scheme: 'bearer', type: 'http' }, - { scheme: 'bearer', type: 'http' }, - ], - url: '/v1/benefit-renewal-requests', + url: '/v1/timeoff/{id}', ...options, + headers: { + 'Content-Type': 'application/json', + ...options.headers, + }, }); /** - * Create a Webhook Callback + * Update Time Off + * + * Updates a Time Off record. + * Warning: Updating the status of a time off through this endpoint is deprecated and will be removed on January 13, 2025. + * To approve or cancel an approved time off, use the `/approve` and `/cancel` endpoints instead. * - * Register a callback to be used for webhooks * * ## Scopes * * | Category | Read only Scope | Write only Scope (read access implicit) | * |---|---|---| - * | Manage company resources (`company_admin`) | - | Manage webhooks (`webhook:write`) | + * | Manage timeoffs (`time_and_attendance`) | - | Manage timeoffs (`timeoff:write`) | * */ -export const postV1WebhookCallbacks = ( - options: Options, +export const patchV1TimeoffId = ( + options: Options, ) => - (options.client ?? client).post< - PostV1WebhookCallbacksResponses, - PostV1WebhookCallbacksErrors, + (options.client ?? client).put< + PatchV1TimeoffIdResponses, + PatchV1TimeoffIdErrors, ThrowOnError >({ - security: [ - { scheme: 'bearer', type: 'http' }, - { scheme: 'bearer', type: 'http' }, - ], - url: '/v1/webhook-callbacks', + url: '/v1/timeoff/{id}', ...options, headers: { 'Content-Type': 'application/json', @@ -5016,271 +4327,302 @@ export const postV1WebhookCallbacks = ( }); /** - * Approve timesheet - * - * Approves the given timesheet. + * Get token identity * - * ## Scopes + * Shows information about the entities that can be controlled by the current auth token. * - * | Category | Read only Scope | Write only Scope (read access implicit) | - * |---|---|---| - * | Manage timeoffs (`time_and_attendance`) | - | Manage timesheets (`timesheet:write`) | + */ +export const getV1IdentityCurrent = ( + options: Options, +) => + (options.client ?? client).get< + GetV1IdentityCurrentResponses, + GetV1IdentityCurrentErrors, + ThrowOnError + >({ url: '/v1/identity/current', ...options }); + +/** + * Payroll Variance Analysis API resource * + * API to retrieve the variance analysis data of a pay group */ -export const postV1TimesheetsTimesheetIdApprove = < - ThrowOnError extends boolean = false, ->( - options: Options, +export const getV1WdGphPayVariance = ( + options: Options, ) => - (options.client ?? client).post< - PostV1TimesheetsTimesheetIdApproveResponses, - PostV1TimesheetsTimesheetIdApproveErrors, + (options.client ?? client).get< + GetV1WdGphPayVarianceResponses, + GetV1WdGphPayVarianceErrors, ThrowOnError >({ - security: [ - { scheme: 'bearer', type: 'http' }, - { scheme: 'bearer', type: 'http' }, - ], - url: '/v1/timesheets/{timesheet_id}/approve', + security: [{ scheme: 'bearer', type: 'http' }], + url: '/v1/wd/gph/payVariance', ...options, }); /** - * List Leave Policies Summary + * List Company Payroll Calendar * - * List all the data related to time off for a given employment + * List all payroll calendars for the company within the requested cycle. * * ## Scopes * * | Category | Read only Scope | Write only Scope (read access implicit) | * |---|---|---| - * | Manage timeoffs (`time_and_attendance`) | View timeoffs (`timeoff:read`) | Manage timeoffs (`timeoff:write`) | + * | Manage payroll runs (`payroll`) | View payroll calendars (`payroll_calendar:read`) | - | * */ -export const getV1LeavePoliciesSummaryEmploymentId = < +export const getV1PayrollCalendarsCycle = < ThrowOnError extends boolean = false, >( - options: Options, + options: Options, ) => (options.client ?? client).get< - GetV1LeavePoliciesSummaryEmploymentIdResponses, - GetV1LeavePoliciesSummaryEmploymentIdErrors, + GetV1PayrollCalendarsCycleResponses, + GetV1PayrollCalendarsCycleErrors, ThrowOnError - >({ - security: [ - { scheme: 'bearer', type: 'http' }, - { scheme: 'bearer', type: 'http' }, - ], - url: '/v1/leave-policies/summary/{employment_id}', - ...options, - }); + >({ url: '/v1/payroll-calendars/{cycle}', ...options }); /** - * List expense categories for the authenticated employee + * Terminate contractor of record employment + * + * **Deprecated.** Use `POST /contractors/employments/{employment_id}/cor-termination-requests` instead. + * + * Initiates a termination request for a Contractor of Record employment. + * When a termination request is sent, a stop work order is issued and the contractor remains active until a final invoice is paid or waived. + * Currently, only Contractor of Record employments can be terminated. * - * Returns the flat list of expense categories applicable to the current employee. Only active categories are returned, filtered by the employee's country / legal-entity visibility rules. Leaf nodes have `is_selectable: true`; parent nodes are excluded unless `include_parents=true`. * * ## Scopes * * | Category | Read only Scope | Write only Scope (read access implicit) | * |---|---|---| - * | Manage expenses (`employment_payments`) | View expenses (`expense:read`) | Manage expenses (`expense:write`) | + * | Manage employments (`employments`) | - | Manage employments (`employment:write`) | + * * + * @deprecated */ -export const getV1EmployeeExpenseCategories = < +export const postV1ContractorsEmploymentsEmploymentIdTerminateCorEmployment = < ThrowOnError extends boolean = false, >( - options?: Options, + options: Options< + PostV1ContractorsEmploymentsEmploymentIdTerminateCorEmploymentData, + ThrowOnError + >, ) => - (options?.client ?? client).get< - GetV1EmployeeExpenseCategoriesResponses, - GetV1EmployeeExpenseCategoriesErrors, + (options.client ?? client).post< + PostV1ContractorsEmploymentsEmploymentIdTerminateCorEmploymentResponses, + PostV1ContractorsEmploymentsEmploymentIdTerminateCorEmploymentErrors, ThrowOnError >({ - security: [{ scheme: 'bearer', type: 'http' }], - url: '/v1/employee/expense-categories', + url: '/v1/contractors/employments/{employment_id}/terminate-cor-employment', ...options, }); /** - * List Company Departments - * - * Lists all departments for the authorized company specified in the request. + * Send back a timesheet for review or modification * + * Sends the given timesheet back to the employee for review or modification. * * ## Scopes * * | Category | Read only Scope | Write only Scope (read access implicit) | * |---|---|---| - * | Manage company resources (`company_admin`) | View departments (`company_department:read`) | Manage departments (`company_department:write`) | + * | Manage timeoffs (`time_and_attendance`) | - | Manage timesheets (`timesheet:write`) | * */ -export const getV1CompanyDepartments = ( - options: Options, +export const postV1TimesheetsTimesheetIdSendBack = < + ThrowOnError extends boolean = false, +>( + options: Options, ) => - (options.client ?? client).get< - GetV1CompanyDepartmentsResponses, - GetV1CompanyDepartmentsErrors, + (options.client ?? client).post< + PostV1TimesheetsTimesheetIdSendBackResponses, + PostV1TimesheetsTimesheetIdSendBackErrors, ThrowOnError >({ - security: [ - { scheme: 'bearer', type: 'http' }, - { scheme: 'bearer', type: 'http' }, - ], - url: '/v1/company-departments', + url: '/v1/timesheets/{timesheet_id}/send-back', ...options, + headers: { + 'Content-Type': 'application/json', + ...options.headers, + }, }); /** - * Create New Department + * Sign a pre-onboarding document + * + * Signs the latest contract document associated with the given pre-onboarding document on behalf + * of the company signatory. * - * Creates a new department in the specified company. Department names may be non-unique and must be non-empty with no more than 255 characters (Unicode code points). * * ## Scopes * * | Category | Read only Scope | Write only Scope (read access implicit) | * |---|---|---| - * | Manage company resources (`company_admin`) | - | Manage departments (`company_department:write`) | + * | Manage employment documents (`employment_documents`) | - | Manage documents (`document:write`) | * */ -export const postV1CompanyDepartments = ( - options: Options, -) => - (options.client ?? client).post< - PostV1CompanyDepartmentsResponses, - PostV1CompanyDepartmentsErrors, - ThrowOnError - >({ - security: [ - { scheme: 'bearer', type: 'http' }, - { scheme: 'bearer', type: 'http' }, - ], - url: '/v1/company-departments', - ...options, - headers: { - 'Content-Type': 'application/json', - ...options.headers, - }, - }); +export const postV1OnboardingEmploymentsEmploymentIdPreOnboardingDocumentsIdSign = + ( + options: Options< + PostV1OnboardingEmploymentsEmploymentIdPreOnboardingDocumentsIdSignData, + ThrowOnError + >, + ) => + (options.client ?? client).post< + PostV1OnboardingEmploymentsEmploymentIdPreOnboardingDocumentsIdSignResponses, + PostV1OnboardingEmploymentsEmploymentIdPreOnboardingDocumentsIdSignErrors, + ThrowOnError + >({ + url: '/v1/onboarding/employments/{employment_id}/pre-onboarding-documents/{id}/sign', + ...options, + headers: { + 'Content-Type': 'application/json', + ...options.headers, + }, + }); /** - * List Offboardings for Employment + * List Benefit Renewal Requests * - * Lists Offboarding requests for a specific employment. + * List Benefit Renewal Requests for each country. * * ## Scopes * * | Category | Read only Scope | Write only Scope (read access implicit) | * |---|---|---| - * | Manage employments (`employments`) | View offboarding requests (`offboarding:read`) | Manage offboarding (`offboarding:write`) | + * | Manage company resources (`company_admin`) | View benefit renewals (`benefit_renewal:read`) | Manage benefit renewals (`benefit_renewal:write`) | * */ -export const getV1OffboardingsEmploymentsEmploymentId = < +export const getV1BenefitRenewalRequests = < ThrowOnError extends boolean = false, >( - options: Options, + options: Options, ) => (options.client ?? client).get< - GetV1OffboardingsEmploymentsEmploymentIdResponses, - GetV1OffboardingsEmploymentsEmploymentIdErrors, + GetV1BenefitRenewalRequestsResponses, + GetV1BenefitRenewalRequestsErrors, + ThrowOnError + >({ url: '/v1/benefit-renewal-requests', ...options }); + +/** + * Reassign default legal entity + * + * Set a different legal entity as the company's default entity. + * + * The default entity is used when creating new employments without an explicit entity. + * This endpoint is only available in Sandbox, otherwise it will respond with a 404. + * + */ +export const putV1SandboxCompaniesCompanyIdDefaultLegalEntityLegalEntityId = < + ThrowOnError extends boolean = false, +>( + options: Options< + PutV1SandboxCompaniesCompanyIdDefaultLegalEntityLegalEntityIdData, + ThrowOnError + >, +) => + (options.client ?? client).put< + PutV1SandboxCompaniesCompanyIdDefaultLegalEntityLegalEntityIdResponses, + PutV1SandboxCompaniesCompanyIdDefaultLegalEntityLegalEntityIdErrors, ThrowOnError >({ - security: [ - { scheme: 'bearer', type: 'http' }, - { scheme: 'bearer', type: 'http' }, - ], - url: '/v1/offboardings/employments/{employment_id}', + url: '/v1/sandbox/companies/{company_id}/default-legal-entity/{legal_entity_id}', ...options, }); /** - * Decline a time off cancellation request - * - * Decline a time off cancellation request. + * List Employment Contract. * + * Get the employment contract history for a given employment. If `only_active` is true, it will return only the active or last active contract. * * ## Scopes * * | Category | Read only Scope | Write only Scope (read access implicit) | * |---|---|---| - * | Manage timeoffs (`time_and_attendance`) | - | Manage timeoffs (`timeoff:write`) | + * | Manage employments (`employments`) | View contracts (`contract:read`) | - | * */ -export const postV1TimeoffTimeoffIdCancelRequestDecline = < +export const getV1EmploymentContracts = ( + options: Options, +) => + (options.client ?? client).get< + GetV1EmploymentContractsResponses, + GetV1EmploymentContractsErrors, + ThrowOnError + >({ url: '/v1/employment-contracts', ...options }); + +/** + * Cancel Contract Amendment + * + * Use this endpoint to cancel an existing contract amendment request. + * + * This endpoint is only available in Sandbox, otherwise it will respond with a 404. + * + */ +export const putV1SandboxContractAmendmentsContractAmendmentRequestIdCancel = < ThrowOnError extends boolean = false, >( options: Options< - PostV1TimeoffTimeoffIdCancelRequestDeclineData, + PutV1SandboxContractAmendmentsContractAmendmentRequestIdCancelData, ThrowOnError >, ) => - (options.client ?? client).post< - PostV1TimeoffTimeoffIdCancelRequestDeclineResponses, - PostV1TimeoffTimeoffIdCancelRequestDeclineErrors, + (options.client ?? client).put< + PutV1SandboxContractAmendmentsContractAmendmentRequestIdCancelResponses, + PutV1SandboxContractAmendmentsContractAmendmentRequestIdCancelErrors, ThrowOnError >({ - security: [ - { scheme: 'bearer', type: 'http' }, - { scheme: 'bearer', type: 'http' }, - ], - url: '/v1/timeoff/{timeoff_id}/cancel-request/decline', + url: '/v1/sandbox/contract-amendments/{contract_amendment_request_id}/cancel', ...options, - headers: { - 'Content-Type': 'application/json', - ...options.headers, - }, }); /** - * Update basic information - * - * Updates employment's basic information. - * - * Supported employment statuses: `created`, `job_title_review`, `created_reserve_paid`, `created_awaiting_reserve`. - * - * This endpoint requires and returns country-specific data. The exact required and returned fields will - * vary depending on which country the employment is in. To see the list of parameters for each country, - * see the **Show form schema** endpoint under the [Countries](#tag/Countries) category. + * Download payslip in the PDF format * - * Please note that the compliance requirements for each country are subject to change according to local - * laws. Given its continual updates, using Remote's [json-schema-form](https://developer.remote.com/docs/how-json-schemas-work) should be considered in order to avoid - * compliance issues and to have the latest version of a country requirements. + * Given a Payslip ID, downloads a payslip. + * It is important to note that each country has a different payslip format and they are not authored by Remote. * - * If you are using this endpoint to build an integration, make sure you are dynamically collecting or - * displaying the latest parameters for each country by querying the _"Show form schema"_ endpoint. * - * For more information on JSON Schemas, see the **How JSON Schemas work** documentation. + * ## Scopes * - * To learn how you can dynamically generate forms to display in your UI, see the documentation for - * the [json-schema-form](https://developer.remote.com/docs/how-json-schemas-work) tool. + * | Category | Read only Scope | Write only Scope (read access implicit) | + * |---|---|---| + * | Manage employment documents (`employment_documents`) | View payslips (`payslip:read`) | - | * + */ +export const getV1PayslipsPayslipIdPdf = ( + options: Options, +) => + (options.client ?? client).get< + GetV1PayslipsPayslipIdPdfResponses, + GetV1PayslipsPayslipIdPdfErrors, + ThrowOnError + >({ url: '/v1/payslips/{payslip_id}/pdf', ...options }); + +/** + * Approve Time Off * + * Approve a time off request. * * ## Scopes * * | Category | Read only Scope | Write only Scope (read access implicit) | * |---|---|---| - * | Manage employments (`employments`) | - | Manage employments (`employment:write`) | + * | Manage timeoffs (`time_and_attendance`) | - | Manage timeoffs (`timeoff:write`) | * */ -export const putV1EmploymentsEmploymentIdBasicInformation = < +export const postV1TimeoffTimeoffIdApprove = < ThrowOnError extends boolean = false, >( - options: Options< - PutV1EmploymentsEmploymentIdBasicInformationData, - ThrowOnError - >, + options: Options, ) => - (options.client ?? client).put< - PutV1EmploymentsEmploymentIdBasicInformationResponses, - PutV1EmploymentsEmploymentIdBasicInformationErrors, + (options.client ?? client).post< + PostV1TimeoffTimeoffIdApproveResponses, + PostV1TimeoffTimeoffIdApproveErrors, ThrowOnError >({ - security: [ - { scheme: 'bearer', type: 'http' }, - { scheme: 'bearer', type: 'http' }, - ], - url: '/v1/employments/{employment_id}/basic-information', + url: '/v1/timeoff/{timeoff_id}/approve', ...options, headers: { 'Content-Type': 'application/json', @@ -5289,72 +4631,79 @@ export const putV1EmploymentsEmploymentIdBasicInformation = < }); /** - * Get a employment benefit offers JSON schema + * List all companies + * + * List all companies that authorized your integration to act on their behalf. In other words, these are all the companies that your integration can manage. Any company that has completed the authorization flow for your integration will be included in the response. * * ## Scopes * * | Category | Read only Scope | Write only Scope (read access implicit) | * |---|---|---| - * | Manage company resources (`company_admin`) | View benefit offers (`benefit_offer:read`) | Manage benefit offers (`benefit_offer:write`) | + * | Manage company resources (`company_admin`) | View companies (`company:read`) | Manage companies (`company:write`) | * */ -export const getV1EmploymentsEmploymentIdBenefitOffersSchema = < - ThrowOnError extends boolean = false, ->( - options: Options< - GetV1EmploymentsEmploymentIdBenefitOffersSchemaData, - ThrowOnError - >, +export const getV1Companies = ( + options: Options, ) => (options.client ?? client).get< - GetV1EmploymentsEmploymentIdBenefitOffersSchemaResponses, - GetV1EmploymentsEmploymentIdBenefitOffersSchemaErrors, + GetV1CompaniesResponses, + GetV1CompaniesErrors, ThrowOnError - >({ - security: [ - { scheme: 'bearer', type: 'http' }, - { scheme: 'bearer', type: 'http' }, - ], - url: '/v1/employments/{employment_id}/benefit-offers/schema', - ...options, - }); + >({ url: '/v1/companies', ...options }); /** - * Submit eligibility questionnaire + * Create a company * - * Submits an eligibility questionnaire for a contractor employment. + * Creates a new company. * - * The questionnaire determines if the contractor is eligible for certain products or features. - * The responses are validated against the JSON schema for the questionnaire type. + * ### Creating a company with only the required request body parameters + * When you call this endpoint and omit all the optional parameters in the request body, + * the following resources get created upon a successful response: + * * A new company with status `pending`. + * * A company owner for the new company with status `initiated`. * - * **Requirements:** - * - Employment must be of type `contractor` - * - Employment must be in `created` status - * - Responses must conform to the questionnaire JSON schema + * See the [update a company endpoint](#tag/Companies/operation/patch_update_company) for + * more details on how to get your company and its owner to `active` status. + * + * If you'd like to create a company and its owner with `active` status in a single request, + * please provide the optional `address_details` parameter as well. + * + * ### Accepting the Terms of Service + * + * A required step for creating a company in Remote is to accept our Terms of Service (ToS). + * + * Company managers need to be aware of our Terms of Service and Privacy Policy, + * hence **it's the responsibility of our partners to advise and ensure company managers read + * and accept the ToS**. The terms have to be accepted only once, before creating a company, + * and the Remote API will collect the acceptance timestamp as its confirmation. + * + * To ensure users read the most recent version of Remote's Terms of Service, their **acceptance + * must be done within the last fifteen minutes prior the company creation action**. + * + * To retrieve this information, partners can provide an element with any text and a description + * explaining that by performing that action they are accepting Remote's Term of Service. For + * instance, the partner can add a checkbox or a "Create Remote Account" button followed by a + * description saying "By creating an account, you agree to + * [Remote's Terms of Service](https://remote.com/terms-of-service). Also see Remote's + * [Privacy Policy](https://remote.com/privacy-policy)". * * * ## Scopes * * | Category | Read only Scope | Write only Scope (read access implicit) | * |---|---|---| - * | Manage employments (`employments`) | - | Manage employments (`employment:write`) | + * | Manage companies (`company_management`) | - | Manage companies (`company:write`) | * */ -export const postV1ContractorsEligibilityQuestionnaire = < - ThrowOnError extends boolean = false, ->( - options: Options, +export const postV1Companies = ( + options: Options, ) => (options.client ?? client).post< - PostV1ContractorsEligibilityQuestionnaireResponses, - PostV1ContractorsEligibilityQuestionnaireErrors, + PostV1CompaniesResponses, + PostV1CompaniesErrors, ThrowOnError >({ - security: [ - { scheme: 'bearer', type: 'http' }, - { scheme: 'bearer', type: 'http' }, - ], - url: '/v1/contractors/eligibility-questionnaire', + url: '/v1/companies', ...options, headers: { 'Content-Type': 'application/json', @@ -5363,88 +4712,50 @@ export const postV1ContractorsEligibilityQuestionnaire = < }); /** - * Show personal information for the authenticated employee + * List company structure nodes + * + * Shows all the company structure nodes of an employment. * - * Returns personal information for the authenticated employee. * * ## Scopes * * | Category | Read only Scope | Write only Scope (read access implicit) | * |---|---|---| - * | Manage employments (`employments`) | View personal details (`personal_detail:read`) | Manage personal details (`personal_detail:write`) | + * | Manage company resources (`company_admin`) | View company structure (`company_structure:read`) | - | * */ -export const getV1EmployeePersonalInformation = < +export const getV1EmploymentsEmploymentIdCompanyStructureNodes = < ThrowOnError extends boolean = false, >( - options?: Options, -) => - (options?.client ?? client).get< - GetV1EmployeePersonalInformationResponses, - GetV1EmployeePersonalInformationErrors, + options: Options< + GetV1EmploymentsEmploymentIdCompanyStructureNodesData, ThrowOnError - >({ - security: [{ scheme: 'bearer', type: 'http' }], - url: '/v1/employee/personal-information', - ...options, - }); - -/** - * List timesheets - * - * Lists all timesheets. - * - * ## Scopes - * - * | Category | Read only Scope | Write only Scope (read access implicit) | - * |---|---|---| - * | Manage timeoffs (`time_and_attendance`) | View timesheets (`timesheet:read`) | Manage timesheets (`timesheet:write`) | - * - */ -export const getV1Timesheets = ( - options?: Options, + >, ) => - (options?.client ?? client).get< - GetV1TimesheetsResponses, - GetV1TimesheetsErrors, + (options.client ?? client).get< + GetV1EmploymentsEmploymentIdCompanyStructureNodesResponses, + GetV1EmploymentsEmploymentIdCompanyStructureNodesErrors, ThrowOnError >({ - security: [ - { scheme: 'bearer', type: 'http' }, - { scheme: 'bearer', type: 'http' }, - ], - url: '/v1/timesheets', + url: '/v1/employments/{employment_id}/company-structure-nodes', ...options, }); /** - * Create a legal entity - * - * Create a new legal entity for a company in a given country, with KYB automatically passed. - * - * The entity is created with active status and can be set as the company's default - * using the reassign default entity endpoint. - * This endpoint is only available in Sandbox, otherwise it will respond with a 404. - * + * Update employment */ -export const postV1SandboxCompaniesCompanyIdLegalEntities = < +export const patchV2EmploymentsEmploymentId2 = < ThrowOnError extends boolean = false, >( - options: Options< - PostV1SandboxCompaniesCompanyIdLegalEntitiesData, - ThrowOnError - >, + options: Options, ) => - (options.client ?? client).post< - PostV1SandboxCompaniesCompanyIdLegalEntitiesResponses, - PostV1SandboxCompaniesCompanyIdLegalEntitiesErrors, + (options.client ?? client).patch< + PatchV2EmploymentsEmploymentId2Responses, + PatchV2EmploymentsEmploymentId2Errors, ThrowOnError >({ - security: [ - { scheme: 'bearer', type: 'http' }, - { scheme: 'bearer', type: 'http' }, - ], - url: '/v1/sandbox/companies/{company_id}/legal-entities', + security: [{ scheme: 'bearer', type: 'http' }], + url: '/v2/employments/{employment_id}', ...options, headers: { 'Content-Type': 'application/json', @@ -5452,124 +4763,21 @@ export const postV1SandboxCompaniesCompanyIdLegalEntities = < }, }); -/** - * Show employment - * - * Shows all the information of an employment. - * - * This endpoint requires and returns country-specific data. The exact required and returned fields will - * vary depending on which country the employment is in. To see the list of parameters for each country, - * see the **Show form schema** endpoint under the [Countries](#tag/Countries) category. - * - * Please note that the compliance requirements for each country are subject to change according to local - * laws. Given its continual updates, using Remote's [json-schema-form](https://developer.remote.com/docs/how-json-schemas-work) should be considered in order to avoid - * compliance issues and to have the latest version of a country requirements. - * - * If you are using this endpoint to build an integration, make sure you are dynamically collecting or - * displaying the latest parameters for each country by querying the _"Show form schema"_ endpoint. - * - * For more information on JSON Schemas, see the **How JSON Schemas work** documentation. - * - * To learn how you can dynamically generate forms to display in your UI, see the documentation for - * the [json-schema-form](https://developer.remote.com/docs/how-json-schemas-work) tool. - * - * - * - * ## Scopes - * - * | Category | Read only Scope | Write only Scope (read access implicit) | - * |---|---|---| - * | Manage employments (`employments`) | View employments (`employment:read`) | Manage employments (`employment:write`) | - * - */ -export const getV1EmploymentsEmploymentId = < - ThrowOnError extends boolean = false, ->( - options: Options, -) => - (options.client ?? client).get< - GetV1EmploymentsEmploymentIdResponses, - GetV1EmploymentsEmploymentIdErrors, - ThrowOnError - >({ - security: [ - { scheme: 'bearer', type: 'http' }, - { scheme: 'bearer', type: 'http' }, - ], - url: '/v1/employments/{employment_id}', - ...options, - }); - /** * Update employment - * - * Updates an employment. - * - * **For `created` employments:** You can change all basic params and onboarding tasks or perform a per onboarding task update. You can also update basic_information. - * - * **For `active` employments:** You can update the manager (`manager_id` field), emergency_contact_details, address_details and work_email. - * - * **For `invited` employments:** You can update the work_email. - * - * After onboarding, only a limited set of employment data will be available for updates, such as `emergency_contact_details`. - * If you want to provide additional information for an employment, please make sure to do so **before** the employee is invited. - * We block updates to some employment data because employees need to agree to amendments in certain cases, such as when there are changes to their contract_details. - * Currently, these amendments can only be done through the Remote UI. - * - * It is possible to update the `external_id` of the employment for all employment statuses. - * - * ## Global Payroll Employees - * - * To update a Global Payment employment your input data must comply with the global payroll json schemas. - * - * **For `active` employments:** In addition to the above list, you can update personal_details. - * - * ## Direct Employees - * - * To update an HRIS employment your input data must comply with the HRIS json schemas. - * - * This endpoint requires and returns country-specific data. The exact required and returned fields will - * vary depending on which country the employment is in. To see the list of parameters for each country, - * see the **Show form schema** endpoint under the [Countries](#tag/Countries) category. - * - * Please note that the compliance requirements for each country are subject to change according to local - * laws. Given its continual updates, using Remote's [json-schema-form](https://developer.remote.com/docs/how-json-schemas-work) should be considered in order to avoid - * compliance issues and to have the latest version of a country requirements. - * - * If you are using this endpoint to build an integration, make sure you are dynamically collecting or - * displaying the latest parameters for each country by querying the _"Show form schema"_ endpoint. - * - * For more information on JSON Schemas, see the **How JSON Schemas work** documentation. - * - * To learn how you can dynamically generate forms to display in your UI, see the documentation for - * the [json-schema-form](https://developer.remote.com/docs/how-json-schemas-work) tool. - * - * - * Please contact Remote if you need to update contractors via API since it's currently not supported. - * - * - * ## Scopes - * - * | Category | Read only Scope | Write only Scope (read access implicit) | - * |---|---|---| - * | Manage employments (`employments`) | - | Manage employments (`employment:write`) | - * */ -export const patchV1EmploymentsEmploymentId2 = < +export const patchV2EmploymentsEmploymentId = < ThrowOnError extends boolean = false, >( - options: Options, + options: Options, ) => - (options.client ?? client).patch< - PatchV1EmploymentsEmploymentId2Responses, - PatchV1EmploymentsEmploymentId2Errors, + (options.client ?? client).put< + PatchV2EmploymentsEmploymentIdResponses, + PatchV2EmploymentsEmploymentIdErrors, ThrowOnError >({ - security: [ - { scheme: 'bearer', type: 'http' }, - { scheme: 'bearer', type: 'http' }, - ], - url: '/v1/employments/{employment_id}', + security: [{ scheme: 'bearer', type: 'http' }], + url: '/v2/employments/{employment_id}', ...options, headers: { 'Content-Type': 'application/json', @@ -5578,75 +4786,28 @@ export const patchV1EmploymentsEmploymentId2 = < }); /** - * Update employment - * - * Updates an employment. - * - * **For `created` employments:** You can change all basic params and onboarding tasks or perform a per onboarding task update. You can also update basic_information. - * - * **For `active` employments:** You can update the manager (`manager_id` field), emergency_contact_details, address_details and work_email. - * - * **For `invited` employments:** You can update the work_email. - * - * After onboarding, only a limited set of employment data will be available for updates, such as `emergency_contact_details`. - * If you want to provide additional information for an employment, please make sure to do so **before** the employee is invited. - * We block updates to some employment data because employees need to agree to amendments in certain cases, such as when there are changes to their contract_details. - * Currently, these amendments can only be done through the Remote UI. - * - * It is possible to update the `external_id` of the employment for all employment statuses. - * - * ## Global Payroll Employees - * - * To update a Global Payment employment your input data must comply with the global payroll json schemas. - * - * **For `active` employments:** In addition to the above list, you can update personal_details. - * - * ## Direct Employees - * - * To update an HRIS employment your input data must comply with the HRIS json schemas. - * - * This endpoint requires and returns country-specific data. The exact required and returned fields will - * vary depending on which country the employment is in. To see the list of parameters for each country, - * see the **Show form schema** endpoint under the [Countries](#tag/Countries) category. - * - * Please note that the compliance requirements for each country are subject to change according to local - * laws. Given its continual updates, using Remote's [json-schema-form](https://developer.remote.com/docs/how-json-schemas-work) should be considered in order to avoid - * compliance issues and to have the latest version of a country requirements. - * - * If you are using this endpoint to build an integration, make sure you are dynamically collecting or - * displaying the latest parameters for each country by querying the _"Show form schema"_ endpoint. - * - * For more information on JSON Schemas, see the **How JSON Schemas work** documentation. - * - * To learn how you can dynamically generate forms to display in your UI, see the documentation for - * the [json-schema-form](https://developer.remote.com/docs/how-json-schemas-work) tool. - * - * - * Please contact Remote if you need to update contractors via API since it's currently not supported. + * Create probation completion letter * + * Create a new probation completion letter request. * * ## Scopes * * | Category | Read only Scope | Write only Scope (read access implicit) | * |---|---|---| - * | Manage employments (`employments`) | - | Manage employments (`employment:write`) | + * | Manage employment documents (`employment_documents`) | - | Manage probation documents (`probation_document:write`) | * */ -export const patchV1EmploymentsEmploymentId = < +export const postV1ProbationCompletionLetter = < ThrowOnError extends boolean = false, >( - options: Options, + options: Options, ) => - (options.client ?? client).put< - PatchV1EmploymentsEmploymentIdResponses, - PatchV1EmploymentsEmploymentIdErrors, + (options.client ?? client).post< + PostV1ProbationCompletionLetterResponses, + PostV1ProbationCompletionLetterErrors, ThrowOnError >({ - security: [ - { scheme: 'bearer', type: 'http' }, - { scheme: 'bearer', type: 'http' }, - ], - url: '/v1/employments/{employment_id}', + url: '/v1/probation-completion-letter', ...options, headers: { 'Content-Type': 'application/json', @@ -5655,250 +4816,142 @@ export const patchV1EmploymentsEmploymentId = < }); /** - * List users via SCIM v2.0 - * - * Retrieves a list of users for the authenticated company following SCIM 2.0 standard - */ -export const getV1ScimV2Users = ( - options?: Options, -) => - (options?.client ?? client).get< - GetV1ScimV2UsersResponses, - GetV1ScimV2UsersErrors, - ThrowOnError - >({ - security: [{ scheme: 'bearer', type: 'http' }], - url: '/v1/scim/v2/Users', - ...options, - }); - -/** - * List Company Payroll Calendar - * - * List all payroll calendars for the company within the requested cycle. - * - * ## Scopes - * - * | Category | Read only Scope | Write only Scope (read access implicit) | - * |---|---|---| - * | Manage payroll runs (`payroll`) | View payroll calendars (`payroll_calendar:read`) | - | + * Creates PDF cost estimation of employments * + * Creates a PDF cost estimation of employments based on the provided parameters. */ -export const getV1PayrollCalendarsCycle = < +export const postV1CostCalculatorEstimationPdf = < ThrowOnError extends boolean = false, >( - options: Options, + options?: Options, ) => - (options.client ?? client).get< - GetV1PayrollCalendarsCycleResponses, - GetV1PayrollCalendarsCycleErrors, + (options?.client ?? client).post< + PostV1CostCalculatorEstimationPdfResponses, + PostV1CostCalculatorEstimationPdfErrors, ThrowOnError >({ - security: [ - { scheme: 'bearer', type: 'http' }, - { scheme: 'bearer', type: 'http' }, - ], - url: '/v1/payroll-calendars/{cycle}', + url: '/v1/cost-calculator/estimation-pdf', ...options, + headers: { + 'Content-Type': 'application/json', + ...options?.headers, + }, }); /** - * List cost center allocations for a company - * - * Lists all employments under a company with their cost center allocations, grouped by employment. - * Each entry includes the employment's legal entity IDs and the list of cost center allocations - * assigned to it, with each allocation's cost center, allocated percentage, and effective period. - * Employments with no cost center allocations are included with an empty list. - * - * Use the `status` query parameter to return only `active`, `scheduled`, or `expired` allocations. - * When omitted, all allocations are returned. - * - * - * ## Scopes - * - * | Category | Read only Scope | Write only Scope (read access implicit) | - * |---|---|---| - * | Manage employments (`employments`) | View employments (`employment:read`) | Manage employments (`employment:write`) | + * Token * + * Endpoint to exchange tokens in the Authorization Code, Assertion Flow, Client Credentials and Refresh Token flows */ -export const getV1CompanyCompanyIdCostCenterAllocations = < - ThrowOnError extends boolean = false, ->( - options: Options< - GetV1CompanyCompanyIdCostCenterAllocationsData, - ThrowOnError - >, +export const postAuthOauth2Token2 = ( + options?: Options, ) => - (options.client ?? client).get< - GetV1CompanyCompanyIdCostCenterAllocationsResponses, - GetV1CompanyCompanyIdCostCenterAllocationsErrors, + (options?.client ?? client).post< + PostAuthOauth2Token2Responses, + PostAuthOauth2Token2Errors, ThrowOnError >({ - security: [ - { scheme: 'bearer', type: 'http' }, - { scheme: 'bearer', type: 'http' }, - ], - url: '/v1/company/{company_id}/cost-center-allocations', + url: '/auth/oauth2/token', ...options, + headers: { + 'Content-Type': 'application/json', + ...options?.headers, + }, }); /** - * Show Legal Entity Administrative details - * - * Show administrative details of legal entity for the authorized company specified in the request. - * + * Download a document for the employee * * ## Scopes * * | Category | Read only Scope | Write only Scope (read access implicit) | * |---|---|---| - * | Manage company resources (`company_admin`) | View companies (`company:read`) | Manage companies (`company:write`) | + * | Manage employment documents (`employment_documents`) | View documents (`document:read`) | Manage documents (`document:write`) | * */ -export const getV1CompaniesCompanyIdLegalEntitiesLegalEntityIdAdministrativeDetails = - ( - options: Options< - GetV1CompaniesCompanyIdLegalEntitiesLegalEntityIdAdministrativeDetailsData, - ThrowOnError - >, - ) => - (options.client ?? client).get< - GetV1CompaniesCompanyIdLegalEntitiesLegalEntityIdAdministrativeDetailsResponses, - GetV1CompaniesCompanyIdLegalEntitiesLegalEntityIdAdministrativeDetailsErrors, - ThrowOnError - >({ - security: [ - { scheme: 'bearer', type: 'http' }, - { scheme: 'bearer', type: 'http' }, - ], - url: '/v1/companies/{company_id}/legal-entities/{legal_entity_id}/administrative-details', - ...options, - }); +export const getV1EmployeeDocumentsId = ( + options: Options, +) => + (options.client ?? client).get< + GetV1EmployeeDocumentsIdResponses, + GetV1EmployeeDocumentsIdErrors, + ThrowOnError + >({ url: '/v1/employee/documents/{id}', ...options }); /** - * Update Legal Entity Administrative details - * - * Update administrative details of legal entity for the authorized company specified in the request. + * Replay Webhook Events * + * Replay webhook events * * ## Scopes * * | Category | Read only Scope | Write only Scope (read access implicit) | * |---|---|---| - * | Manage companies (`company_management`) | - | Manage companies (`company:write`) | - * - */ -export const putV1CompaniesCompanyIdLegalEntitiesLegalEntityIdAdministrativeDetails = - ( - options: Options< - PutV1CompaniesCompanyIdLegalEntitiesLegalEntityIdAdministrativeDetailsData, - ThrowOnError - >, - ) => - (options.client ?? client).put< - PutV1CompaniesCompanyIdLegalEntitiesLegalEntityIdAdministrativeDetailsResponses, - PutV1CompaniesCompanyIdLegalEntitiesLegalEntityIdAdministrativeDetailsErrors, - ThrowOnError - >({ - security: [ - { scheme: 'bearer', type: 'http' }, - { scheme: 'bearer', type: 'http' }, - ], - url: '/v1/companies/{company_id}/legal-entities/{legal_entity_id}/administrative-details', - ...options, - headers: { - 'Content-Type': 'application/json', - ...options.headers, - }, - }); - -/** - * Show region fields + * | Manage company resources (`company_admin`) | - | Manage webhooks (`webhook:write`) | * - * Returns required fields JSON Schema for a given region. These are required in order to calculate - * the cost of employment for the region. These fields are based on employer contributions that are associated - * with the region or any of it's parent regions. */ -export const getV1CostCalculatorRegionsSlugFields = < - ThrowOnError extends boolean = false, ->( - options: Options, +export const postV1WebhookEventsReplay = ( + options: Options, ) => - (options.client ?? client).get< - GetV1CostCalculatorRegionsSlugFieldsResponses, - GetV1CostCalculatorRegionsSlugFieldsErrors, + (options.client ?? client).post< + PostV1WebhookEventsReplayResponses, + PostV1WebhookEventsReplayErrors, ThrowOnError >({ - security: [ - { scheme: 'bearer', type: 'http' }, - { scheme: 'bearer', type: 'http' }, - { scheme: 'bearer', type: 'http' }, - { scheme: 'bearer', type: 'http' }, - ], - url: '/v1/cost-calculator/regions/{slug}/fields', + url: '/v1/webhook-events/replay', ...options, + headers: { + 'Content-Type': 'application/json', + ...options.headers, + }, }); /** - * Show Offboarding - * - * Shows an Offboarding request. - * - * ## Scopes + * Trigger a Webhook * - * | Category | Read only Scope | Write only Scope (read access implicit) | - * |---|---|---| - * | Manage employments (`employments`) | View offboarding requests (`offboarding:read`) | Manage offboarding (`offboarding:write`) | + * Triggers a callback previously registered for webhooks. Use this endpoint to + * emit a webhook for testing in the Sandbox environment. This endpoint will + * respond with a 404 outside of the Sandbox environment. * */ -export const getV1OffboardingsId = ( - options: Options, +export const postV1SandboxWebhookCallbacksTrigger = < + ThrowOnError extends boolean = false, +>( + options?: Options, ) => - (options.client ?? client).get< - GetV1OffboardingsIdResponses, - GetV1OffboardingsIdErrors, + (options?.client ?? client).post< + PostV1SandboxWebhookCallbacksTriggerResponses, + PostV1SandboxWebhookCallbacksTriggerErrors, ThrowOnError >({ - security: [ - { scheme: 'bearer', type: 'http' }, - { scheme: 'bearer', type: 'http' }, - ], - url: '/v1/offboardings/{id}', + url: '/v1/sandbox/webhook-callbacks/trigger', ...options, + headers: { + 'Content-Type': 'application/json', + ...options?.headers, + }, }); /** - * Get Employee Details for a Payroll Run - * - * Gets the employee details for a payroll run + * Show bulk employment job * * ## Scopes * * | Category | Read only Scope | Write only Scope (read access implicit) | * |---|---|---| - * | Manage payroll runs (`payroll`) | View payroll runs (`payroll_run:read`) | - | + * | Manage employments (`employments`) | View employments (`employment:read`) | Manage employments (`employment:write`) | * */ -export const getV1PayrollRunsPayrollRunIdEmployeeDetails = < +export const getV1BulkEmploymentJobsJobId = < ThrowOnError extends boolean = false, >( - options: Options< - GetV1PayrollRunsPayrollRunIdEmployeeDetailsData, - ThrowOnError - >, + options: Options, ) => (options.client ?? client).get< - GetV1PayrollRunsPayrollRunIdEmployeeDetailsResponses, - GetV1PayrollRunsPayrollRunIdEmployeeDetailsErrors, + GetV1BulkEmploymentJobsJobIdResponses, + GetV1BulkEmploymentJobsJobIdErrors, ThrowOnError - >({ - security: [ - { scheme: 'bearer', type: 'http' }, - { scheme: 'bearer', type: 'http' }, - ], - url: '/v1/payroll-runs/{payroll_run_id}/employee-details', - ...options, - }); + >({ url: '/v1/bulk-employment-jobs/{job_id}', ...options }); /** * List bulk employment rows @@ -5921,125 +4974,104 @@ export const getV1BulkEmploymentJobsJobIdRows = < GetV1BulkEmploymentJobsJobIdRowsResponses, GetV1BulkEmploymentJobsJobIdRowsErrors, ThrowOnError - >({ - security: [ - { scheme: 'bearer', type: 'http' }, - { scheme: 'bearer', type: 'http' }, - ], - url: '/v1/bulk-employment-jobs/{job_id}/rows', - ...options, - }); + >({ url: '/v1/bulk-employment-jobs/{job_id}/rows', ...options }); /** - * Show employee emergency contact - * - * Returns the authenticated employee's emergency contact. - * - * The employment is derived from the access token's subject — there is no - * employment id in the path. - * - * This endpoint requires country-specific data. The exact required fields vary depending on which - * country the authenticated employee's employment is in. Query the - * [Show form schema](#tag/Countries/operation/get_show_form_country) endpoint with `emergency_contact_details` - * as the form name to discover the schema for a given country. + * Magic links generator * + * Generates a magic link for a passwordless authentication. + * To create a magic link for a company admin, you need to provide the `user_id` parameter. + * To create a magic link for an employee, you need to provide the `employment_id` parameter. * * * ## Scopes * * | Category | Read only Scope | Write only Scope (read access implicit) | * |---|---|---| - * | Manage employments (`employments`) | View emergency contacts (`emergency_contact:read`) | Manage emergency contacts (`emergency_contact:write`) | + * | Manage company resources (`company_admin`) | - | Create magic links (`magic_link:write`) | * */ -export const getV1EmployeeEmergencyContact = < - ThrowOnError extends boolean = false, ->( - options?: Options, +export const postV1MagicLink = ( + options: Options, ) => - (options?.client ?? client).get< - GetV1EmployeeEmergencyContactResponses, - GetV1EmployeeEmergencyContactErrors, + (options.client ?? client).post< + PostV1MagicLinkResponses, + PostV1MagicLinkErrors, ThrowOnError >({ - security: [{ scheme: 'bearer', type: 'http' }], - url: '/v1/employee/emergency-contact', + url: '/v1/magic-link', ...options, + headers: { + 'Content-Type': 'application/json', + ...options.headers, + }, }); /** - * Update employee emergency contact - * - * Updates the authenticated employee's emergency contact. - * - * The employment is derived from the access token's subject — there is no - * employment id in the path. The token must be an employee-role token - * (typically obtained via the OAuth2 assertion grant with subject - * `urn:remote-api:employee:employment:`). + * Show a company * - * This endpoint requires country-specific data. The exact required fields vary depending on which - * country the authenticated employee's employment is in. Query the - * [Show form schema](#tag/Countries/operation/get_show_form_country) endpoint with `emergency_contact_details` - * as the form name to discover the schema for a given country. + * Given an ID, shows a company. * + * If the used access token was issued by the OAuth 2.0 Authorization Code flow, + * then only the associated company can be accessed through the endpoint. * * * ## Scopes * * | Category | Read only Scope | Write only Scope (read access implicit) | * |---|---|---| - * | Manage employments (`employments`) | - | Manage emergency contacts (`emergency_contact:write`) | + * | Manage company resources (`company_admin`) | View companies (`company:read`) | Manage companies (`company:write`) | * */ -export const putV1EmployeeEmergencyContact = < - ThrowOnError extends boolean = false, ->( - options?: Options, +export const getV1CompaniesCompanyId = ( + options: Options, ) => - (options?.client ?? client).put< - PutV1EmployeeEmergencyContactResponses, - PutV1EmployeeEmergencyContactErrors, + (options.client ?? client).get< + GetV1CompaniesCompanyIdResponses, + GetV1CompaniesCompanyIdErrors, ThrowOnError - >({ - security: [{ scheme: 'bearer', type: 'http' }], - url: '/v1/employee/emergency-contact', - ...options, - headers: { - 'Content-Type': 'application/json', - ...options?.headers, - }, - }); + >({ url: '/v1/companies/{company_id}', ...options }); /** - * Create employment + * Update a company * - * Creates an employment without provisional_start_date validation. + * Given an ID and a request object with new information, updates a company. * - * This endpoint is only available in Sandbox and allows creating employments which - * `provisional_start_date` is in the past. This is especially helpful for: - * * Testing the Timeoff Balance endpoints - * * Testing the Offboarding endpoints - * * Testing features around probation periods + * ### Getting a company and its owner to `active` status + * If you created a company using the + * [create a company endpoint](#tag/Companies/operation/post_create_company) without all the required + * request body parameters, you can use this endpoint to provide the missing data. Once the company + * and its owner have all the necessary data, both their statuses will be set to `active` and the company + * onboarding will be marked as "completed". + * + * The following constitutes a company with "all the necessary data": + * * Complete `address`, with valid `address`, `postal_code`, `country` and `state` parameters (Varies by country. Use the + * [show form schema endpoint](#tag/Countries/operation/get_show_form_country) to see which address parameters + * are required). + * * Company `tax_number` or `registration_number` is not nil + * * Company `name` is not nil (already required when creating the company) + * * Company has a `desired_currency` in their bank account (already required when creating the company) + * * Company has accepted terms of service (already required when creating the company) * - * This endpoint will respond with a 404 outside of the Sandbox environment. * - * For creating an employment's parameters outside of testing purposes, use [this - * Employment create endpoint](#operation/post_create_employment) + * ## Scopes + * + * | Category | Read only Scope | Write only Scope (read access implicit) | + * |---|---|---| + * | Manage companies (`company_management`) | - | Manage companies (`company:write`) | * */ -export const postV1SandboxEmployments = ( - options: Options, +export const patchV1CompaniesCompanyId2 = < + ThrowOnError extends boolean = false, +>( + options: Options, ) => - (options.client ?? client).post< - PostV1SandboxEmploymentsResponses, - PostV1SandboxEmploymentsErrors, + (options.client ?? client).patch< + PatchV1CompaniesCompanyId2Responses, + PatchV1CompaniesCompanyId2Errors, ThrowOnError >({ - security: [ - { scheme: 'bearer', type: 'http' }, - { scheme: 'bearer', type: 'http' }, - ], - url: '/v1/sandbox/employments', + url: '/v1/companies/{company_id}', ...options, headers: { 'Content-Type': 'application/json', @@ -6048,38 +5080,43 @@ export const postV1SandboxEmployments = ( }); /** - * Create contract eligibility + * Update a company * - * Create contract eligibility for an employment. + * Given an ID and a request object with new information, updates a company. * - * This will create a new contract eligibility for the employment. + * ### Getting a company and its owner to `active` status + * If you created a company using the + * [create a company endpoint](#tag/Companies/operation/post_create_company) without all the required + * request body parameters, you can use this endpoint to provide the missing data. Once the company + * and its owner have all the necessary data, both their statuses will be set to `active` and the company + * onboarding will be marked as "completed". + * + * The following constitutes a company with "all the necessary data": + * * Complete `address`, with valid `address`, `postal_code`, `country` and `state` parameters (Varies by country. Use the + * [show form schema endpoint](#tag/Countries/operation/get_show_form_country) to see which address parameters + * are required). + * * Company `tax_number` or `registration_number` is not nil + * * Company `name` is not nil (already required when creating the company) + * * Company has a `desired_currency` in their bank account (already required when creating the company) + * * Company has accepted terms of service (already required when creating the company) * * * ## Scopes * * | Category | Read only Scope | Write only Scope (read access implicit) | * |---|---|---| - * | Manage employment documents (`employment_documents`) | - | Manage contract eligibility (`contract_eligibility:write`) | + * | Manage companies (`company_management`) | - | Manage companies (`company:write`) | * */ -export const postV1EmploymentsEmploymentIdContractEligibility = < - ThrowOnError extends boolean = false, ->( - options: Options< - PostV1EmploymentsEmploymentIdContractEligibilityData, - ThrowOnError - >, +export const patchV1CompaniesCompanyId = ( + options: Options, ) => - (options.client ?? client).post< - PostV1EmploymentsEmploymentIdContractEligibilityResponses, - PostV1EmploymentsEmploymentIdContractEligibilityErrors, + (options.client ?? client).put< + PatchV1CompaniesCompanyIdResponses, + PatchV1CompaniesCompanyIdErrors, ThrowOnError >({ - security: [ - { scheme: 'bearer', type: 'http' }, - { scheme: 'bearer', type: 'http' }, - ], - url: '/v1/employments/{employment_id}/contract-eligibility', + url: '/v1/companies/{company_id}', ...options, headers: { 'Content-Type': 'application/json', @@ -6088,386 +5125,331 @@ export const postV1EmploymentsEmploymentIdContractEligibility = < }); /** - * List countries + * Show form schema * - * Returns a list of all countries that are supported by Remote API alphabetically ordered. - * The supported list accounts for creating employment with basic information and it does not imply fully onboarding employment via JSON Schema. - * The countries present in the list are the ones where creating a company is allowed. + * Returns the json schema of the requested company form. + * Currently only supports the `address_details` form. * * * ## Scopes * * | Category | Read only Scope | Write only Scope (read access implicit) | * |---|---|---| - * | Manage company resources (`company_admin`) | View countries (`country:read`) | - | + * | Manage company resources (`company_admin`) | View companies (`company:read`) | Manage companies (`company:write`) | * */ -export const getV1Countries = ( - options: Options, +export const getV1CompaniesSchema = ( + options: Options, ) => (options.client ?? client).get< - GetV1CountriesResponses, - GetV1CountriesErrors, + GetV1CompaniesSchemaResponses, + GetV1CompaniesSchemaErrors, ThrowOnError - >({ - security: [ - { scheme: 'bearer', type: 'http' }, - { scheme: 'bearer', type: 'http' }, - { scheme: 'bearer', type: 'http' }, - ], - url: '/v1/countries', - ...options, - }); + >({ url: '/v1/companies/schema', ...options }); /** - * Update contract details + * Get employee token identity * - * Updates employment's contract details. + * Returns user and company information for the authenticated employee. + */ +export const getV1EmployeeCurrent = ( + options?: Options, +) => + (options?.client ?? client).get< + GetV1EmployeeCurrentResponses, + GetV1EmployeeCurrentErrors, + ThrowOnError + >({ url: '/v1/employee/current', ...options }); + +/** + * List pricing plan partner templates * - * This endpoint requires and returns country-specific data. The exact required and returned fields will - * vary depending on which country the employment is in. To see the list of parameters for each country, - * see the **Show form schema** endpoint under the [Countries](#tag/Countries) category. + * List all pricing plan partner templates. * - * Please note that the compliance requirements for each country are subject to change according to local - * laws. Given its continual updates, using Remote's [json-schema-form](https://developer.remote.com/docs/how-json-schemas-work) should be considered in order to avoid - * compliance issues and to have the latest version of a country requirements. * - * If you are using this endpoint to build an integration, make sure you are dynamically collecting or - * displaying the latest parameters for each country by querying the _"Show form schema"_ endpoint. + * ## Scopes * - * For more information on JSON Schemas, see the **How JSON Schemas work** documentation. + * | Category | Read only Scope | Write only Scope (read access implicit) | + * |---|---|---| + * | Manage companies (`company_management`) | View pricing plans (`pricing_plan:read`) | Manage pricing plans (`pricing_plan:write`) | * - * To learn how you can dynamically generate forms to display in your UI, see the documentation for - * the [json-schema-form](https://developer.remote.com/docs/how-json-schemas-form) tool. + */ +export const getV1PricingPlanPartnerTemplates = < + ThrowOnError extends boolean = false, +>( + options?: Options, +) => + (options?.client ?? client).get< + GetV1PricingPlanPartnerTemplatesResponses, + GetV1PricingPlanPartnerTemplatesErrors, + ThrowOnError + >({ url: '/v1/pricing-plan-partner-templates', ...options }); + +/** + * Show engagement agreement details * + * Returns the engagement agreement details JSON Schema for a country. Only DEU country is supported for now. * * * ## Scopes * * | Category | Read only Scope | Write only Scope (read access implicit) | * |---|---|---| - * | Manage employments (`employments`) | - | Manage employments (`employment:write`) | + * | Manage company resources (`company_admin`) | View forms (`form:read`) | - | * */ -export const putV2EmploymentsEmploymentIdContractDetails = < +export const getV1CountriesCountryCodeEngagementAgreementDetails = < ThrowOnError extends boolean = false, >( options: Options< - PutV2EmploymentsEmploymentIdContractDetailsData, + GetV1CountriesCountryCodeEngagementAgreementDetailsData, ThrowOnError >, ) => - (options.client ?? client).put< - PutV2EmploymentsEmploymentIdContractDetailsResponses, - PutV2EmploymentsEmploymentIdContractDetailsErrors, + (options.client ?? client).get< + GetV1CountriesCountryCodeEngagementAgreementDetailsResponses, + GetV1CountriesCountryCodeEngagementAgreementDetailsErrors, ThrowOnError >({ - security: [ - { scheme: 'bearer', type: 'http' }, - { scheme: 'bearer', type: 'http' }, - ], - url: '/v2/employments/{employment_id}/contract-details', + url: '/v1/countries/{country_code}/engagement-agreement-details', ...options, - headers: { - 'Content-Type': 'application/json', - ...options.headers, - }, }); /** - * List payslip files for the authenticated employee + * Show employee bank account + * + * Returns the authenticated employee's bank account details. + * + * This endpoint requires and returns country-specific data. The exact fields vary depending on which + * country the authenticated employee's employment is in. Query the + * [Show form schema](#tag/Countries/operation/get_show_form_country) endpoint with `bank_account_details` + * as the form name to discover the schema for a given country. + * * - * Returns a paginated list of payslip files belonging to the current employee. * * ## Scopes * * | Category | Read only Scope | Write only Scope (read access implicit) | * |---|---|---| - * | Manage employment documents (`employment_documents`) | View payslips (`payslip:read`) | - | + * | Manage employments (`employments`) | View bank accounts (`bank_account:read`) | Manage bank accounts (`bank_account:write`) | * */ -export const getV1EmployeePayslipFiles = ( - options?: Options, +export const getV1EmployeeBankAccount = ( + options?: Options, ) => (options?.client ?? client).get< - GetV1EmployeePayslipFilesResponses, - GetV1EmployeePayslipFilesErrors, + GetV1EmployeeBankAccountResponses, + GetV1EmployeeBankAccountErrors, ThrowOnError - >({ - security: [{ scheme: 'bearer', type: 'http' }], - url: '/v1/employee/payslip-files', - ...options, - }); + >({ url: '/v1/employee/bank-account', ...options }); /** - * Create a new token for a company + * Update employee bank account * - * Creates new tokens for a given company - */ -export const postV1CompaniesCompanyIdCreateToken = < - ThrowOnError extends boolean = false, ->( - options: Options, -) => - (options.client ?? client).post< - PostV1CompaniesCompanyIdCreateTokenResponses, - PostV1CompaniesCompanyIdCreateTokenErrors, - ThrowOnError - >({ - security: [{ scheme: 'bearer', type: 'http' }], - url: '/v1/companies/{company_id}/create-token', - ...options, - }); - -/** - * List Company Legal Entities + * Upserts the authenticated employee's bank account details. + * + * This endpoint requires and returns country-specific data. The exact fields vary depending on which + * country the authenticated employee's employment is in. Query the + * [Show form schema](#tag/Countries/operation/get_show_form_country) endpoint with `bank_account_details` + * as the form name to discover the schema for a given country. * - * Lists all active legal entities for the authorized company specified in the request. * * * ## Scopes * * | Category | Read only Scope | Write only Scope (read access implicit) | * |---|---|---| - * | Manage company resources (`company_admin`) | View companies (`company:read`) | Manage companies (`company:write`) | - * - */ -export const getV1CompaniesCompanyIdLegalEntities = < - ThrowOnError extends boolean = false, ->( - options: Options, -) => - (options.client ?? client).get< - GetV1CompaniesCompanyIdLegalEntitiesResponses, - GetV1CompaniesCompanyIdLegalEntitiesErrors, - ThrowOnError - >({ - security: [ - { scheme: 'bearer', type: 'http' }, - { scheme: 'bearer', type: 'http' }, - ], - url: '/v1/companies/{company_id}/legal-entities', - ...options, - }); - -/** - * Complete onboarding - * - * Completes the employee onboarding. When all tasks are completed, the employee is marked as in `review` status + * | Manage employments (`employments`) | - | Manage bank accounts (`bank_account:write`) | * - * @deprecated */ -export const postV1Ready = ( - options: Options, +export const putV1EmployeeBankAccount = ( + options?: Options, ) => - (options.client ?? client).post< - PostV1ReadyResponses, - PostV1ReadyErrors, + (options?.client ?? client).put< + PutV1EmployeeBankAccountResponses, + PutV1EmployeeBankAccountErrors, ThrowOnError >({ - security: [{ scheme: 'bearer', type: 'http' }], - url: '/v1/ready', + url: '/v1/employee/bank-account', ...options, headers: { 'Content-Type': 'application/json', - ...options.headers, + ...options?.headers, }, }); /** - * List Leave Policies Details + * Update contract details + * + * Updates employment's contract details. + * + * This endpoint requires and returns country-specific data. The exact required and returned fields will + * vary depending on which country the employment is in. To see the list of parameters for each country, + * see the **Show form schema** endpoint under the [Countries](#tag/Countries) category. + * + * Please note that the compliance requirements for each country are subject to change according to local + * laws. Given its continual updates, using Remote's [json-schema-form](https://developer.remote.com/docs/how-json-schemas-work) should be considered in order to avoid + * compliance issues and to have the latest version of a country requirements. + * + * If you are using this endpoint to build an integration, make sure you are dynamically collecting or + * displaying the latest parameters for each country by querying the _"Show form schema"_ endpoint. + * + * For more information on JSON Schemas, see the **How JSON Schemas work** documentation. + * + * To learn how you can dynamically generate forms to display in your UI, see the documentation for + * the [json-schema-form](https://developer.remote.com/docs/how-json-schemas-form) tool. + * * - * Describe the leave policies (custom or not) for a given employment * * ## Scopes * * | Category | Read only Scope | Write only Scope (read access implicit) | * |---|---|---| - * | Manage timeoffs (`time_and_attendance`) | View timeoffs (`timeoff:read`) | Manage timeoffs (`timeoff:write`) | + * | Manage employments (`employments`) | - | Manage employments (`employment:write`) | * */ -export const getV1LeavePoliciesDetailsEmploymentId = < +export const putV2EmploymentsEmploymentIdContractDetails = < ThrowOnError extends boolean = false, >( - options: Options, + options: Options< + PutV2EmploymentsEmploymentIdContractDetailsData, + ThrowOnError + >, ) => - (options.client ?? client).get< - GetV1LeavePoliciesDetailsEmploymentIdResponses, - GetV1LeavePoliciesDetailsEmploymentIdErrors, + (options.client ?? client).put< + PutV2EmploymentsEmploymentIdContractDetailsResponses, + PutV2EmploymentsEmploymentIdContractDetailsErrors, ThrowOnError >({ - security: [ - { scheme: 'bearer', type: 'http' }, - { scheme: 'bearer', type: 'http' }, - ], - url: '/v1/leave-policies/details/{employment_id}', + url: '/v2/employments/{employment_id}/contract_details', ...options, + headers: { + 'Content-Type': 'application/json', + ...options.headers, + }, }); /** - * List Time Off Types - * - * Lists all time off types that can be used for the `timeoff_type` parameter. - * - * **Backward compatibility:** Calling this endpoint without the `type` query parameter returns the same response as before (time off types for full-time employments). Existing integrations do not need to change. + * Show product prices in the company's desired currency * - * Optionally, pass `type=contractor` to get time off types for contractor employments, or `type=full_time` for full-time employments (same as omitting the parameter). + * list product prices in the company's desired currency. + * the endpoint currently only returns the product prices for the EOR monthly product and the contractor products (Standard, Plus and COR). + * the product prices are then used to create a pricing plan for the company. * * * ## Scopes * * | Category | Read only Scope | Write only Scope (read access implicit) | * |---|---|---| - * | Manage timeoffs (`time_and_attendance`) | View timeoffs (`timeoff:read`) | Manage timeoffs (`timeoff:write`) | + * | Manage companies (`company_management`) | View pricing plans (`pricing_plan:read`) | Manage pricing plans (`pricing_plan:write`) | * */ -export const getV1TimeoffTypes = ( - options: Options, +export const getV1CompaniesCompanyIdProductPrices = < + ThrowOnError extends boolean = false, +>( + options: Options, ) => (options.client ?? client).get< - GetV1TimeoffTypesResponses, - GetV1TimeoffTypesErrors, + GetV1CompaniesCompanyIdProductPricesResponses, + GetV1CompaniesCompanyIdProductPricesErrors, ThrowOnError - >({ - security: [ - { scheme: 'bearer', type: 'http' }, - { scheme: 'bearer', type: 'http' }, - ], - url: '/v1/timeoff/types', - ...options, - }); + >({ url: '/v1/companies/{company_id}/product-prices', ...options }); /** - * Creates a CSV cost estimation of employments + * Create a new token for a company * - * Creates CSV cost estimation of employments + * Creates new tokens for a given company */ -export const postV1CostCalculatorEstimationCsv = < +export const postV1CompaniesCompanyIdCreateToken = < ThrowOnError extends boolean = false, >( - options?: Options, + options: Options, ) => - (options?.client ?? client).post< - PostV1CostCalculatorEstimationCsvResponses, - PostV1CostCalculatorEstimationCsvErrors, + (options.client ?? client).post< + PostV1CompaniesCompanyIdCreateTokenResponses, + PostV1CompaniesCompanyIdCreateTokenErrors, ThrowOnError - >({ - security: [ - { scheme: 'bearer', type: 'http' }, - { scheme: 'bearer', type: 'http' }, - { scheme: 'bearer', type: 'http' }, - { scheme: 'bearer', type: 'http' }, - ], - url: '/v1/cost-calculator/estimation-csv', - ...options, - headers: { - 'Content-Type': 'application/json', - ...options?.headers, - }, - }); + >({ url: '/v1/companies/{company_id}/create-token', ...options }); /** - * Activate Global Payroll for a legal entity + * Get Employment Profile * - * Enables the Global Payroll product on a legal entity so that GP employees can be created against it. + * Gets necessary information to perform the identity verification of an employee. * - * Performs three idempotent steps: - * * Adds the Global Payroll product to the company. - * * Flips `global_payroll_enabled` on the legal entity's settings. - * * Ensures a Global Payroll pricing plan exists for the legal entity's country. * - * This endpoint is only available in Sandbox, otherwise it will respond with a 404. + * ## Scopes + * + * | Category | Read only Scope | Write only Scope (read access implicit) | + * |---|---|---| + * | Manage employment documents (`employment_documents`) | View identity verification (`identity_verification:read`) | Manage identity verification (`identity_verification:write`) | * */ -export const postV1SandboxCompaniesCompanyIdLegalEntitiesLegalEntityIdActivateGlobalPayroll = - ( - options: Options< - PostV1SandboxCompaniesCompanyIdLegalEntitiesLegalEntityIdActivateGlobalPayrollData, - ThrowOnError - >, - ) => - (options.client ?? client).post< - PostV1SandboxCompaniesCompanyIdLegalEntitiesLegalEntityIdActivateGlobalPayrollResponses, - PostV1SandboxCompaniesCompanyIdLegalEntitiesLegalEntityIdActivateGlobalPayrollErrors, - ThrowOnError - >({ - security: [ - { scheme: 'bearer', type: 'http' }, - { scheme: 'bearer', type: 'http' }, - ], - url: '/v1/sandbox/companies/{company_id}/legal-entities/{legal_entity_id}/activate-global-payroll', - ...options, - }); +export const getV1IdentityVerificationEmploymentId = < + ThrowOnError extends boolean = false, +>( + options: Options, +) => + (options.client ?? client).get< + GetV1IdentityVerificationEmploymentIdResponses, + GetV1IdentityVerificationEmploymentIdErrors, + ThrowOnError + >({ url: '/v1/identity-verification/{employment_id}', ...options }); /** - * Show employee personal details - * - * Returns the authenticated employee's personal details. - * - * This endpoint requires country-specific data. Query the - * [Show form schema](#tag/Countries/operation/get_show_form_country) endpoint with `personal_details` - * as the form name to discover the schema for a given country. - * + * Download a receipt by id * + * Download a receipt by id. * * ## Scopes * * | Category | Read only Scope | Write only Scope (read access implicit) | * |---|---|---| - * | Manage employments (`employments`) | View personal details (`personal_detail:read`) | Manage personal details (`personal_detail:write`) | + * | Manage expenses (`employment_payments`) | View expenses (`expense:read`) | Manage expenses (`expense:write`) | * */ -export const getV1EmployeePersonalDetails = < +export const getV1ExpensesExpenseIdReceiptsReceiptId = < ThrowOnError extends boolean = false, >( - options?: Options, + options: Options, ) => - (options?.client ?? client).get< - GetV1EmployeePersonalDetailsResponses, - GetV1EmployeePersonalDetailsErrors, + (options.client ?? client).get< + GetV1ExpensesExpenseIdReceiptsReceiptIdResponses, + GetV1ExpensesExpenseIdReceiptsReceiptIdErrors, ThrowOnError - >({ - security: [{ scheme: 'bearer', type: 'http' }], - url: '/v1/employee/personal-details', - ...options, - }); + >({ url: '/v1/expenses/{expense_id}/receipts/{receipt_id}', ...options }); /** - * Update employee personal details - * - * Updates the authenticated employee's personal details (date of birth, - * national ID, nationality, etc.). + * Preview the Employment Agreement for an employment * - * This endpoint requires country-specific data. Query the - * [Show form schema](#tag/Countries/operation/get_show_form_country) endpoint with `personal_details` - * as the form name to discover the schema for a given country. + * Returns a base64-encoded PDF preview of the auto-generated Employment Agreement for an employment. * + * The document is rendered as a draft (no signatures) and is not persisted. EA preview is only + * available for countries that have a published Employment Agreement automation template — see the + * `employment_agreement_preview_available` flag on the [Countries](#tag/Countries) endpoint. * * * ## Scopes * * | Category | Read only Scope | Write only Scope (read access implicit) | * |---|---|---| - * | Manage employments (`employments`) | - | Manage personal details (`personal_detail:write`) | + * | Manage employment documents (`employment_documents`) | View documents (`document:read`) | Manage documents (`document:write`) | * */ -export const putV1EmployeePersonalDetails = < +export const getV1EmploymentsEmploymentIdEmploymentAgreementPreview = < ThrowOnError extends boolean = false, >( - options?: Options, + options: Options< + GetV1EmploymentsEmploymentIdEmploymentAgreementPreviewData, + ThrowOnError + >, ) => - (options?.client ?? client).put< - PutV1EmployeePersonalDetailsResponses, - PutV1EmployeePersonalDetailsErrors, + (options.client ?? client).get< + GetV1EmploymentsEmploymentIdEmploymentAgreementPreviewResponses, + GetV1EmploymentsEmploymentIdEmploymentAgreementPreviewErrors, ThrowOnError >({ - security: [{ scheme: 'bearer', type: 'http' }], - url: '/v1/employee/personal-details', + url: '/v1/employments/{employment_id}/employment-agreement/preview', ...options, - headers: { - 'Content-Type': 'application/json', - ...options?.headers, - }, }); /** @@ -6489,36 +5471,75 @@ export const getV1ScimV2Groups = ( }); /** - * Create a contract document for a contractor + * Show expense * - * Create a contract document for a contractor. + * Shows a single expense record + * + * ## Scopes + * + * | Category | Read only Scope | Write only Scope (read access implicit) | + * |---|---|---| + * | Manage expenses (`employment_payments`) | View expenses (`expense:read`) | Manage expenses (`expense:write`) | * + */ +export const getV1ExpensesId = ( + options: Options, +) => + (options.client ?? client).get< + GetV1ExpensesIdResponses, + GetV1ExpensesIdErrors, + ThrowOnError + >({ url: '/v1/expenses/{id}', ...options }); + +/** + * Update an expense + * + * Updates an expense * * ## Scopes * * | Category | Read only Scope | Write only Scope (read access implicit) | * |---|---|---| - * | Manage employment documents (`employment_documents`) | - | Manage documents (`document:write`) | + * | Manage expenses (`employment_payments`) | - | Manage expenses (`expense:write`) | * */ -export const postV1ContractorsEmploymentsEmploymentIdContractDocuments = < - ThrowOnError extends boolean = false, ->( - options: Options< - PostV1ContractorsEmploymentsEmploymentIdContractDocumentsData, +export const patchV1ExpensesId2 = ( + options: Options, +) => + (options.client ?? client).patch< + PatchV1ExpensesId2Responses, + PatchV1ExpensesId2Errors, ThrowOnError - >, + >({ + url: '/v1/expenses/{id}', + ...options, + headers: { + 'Content-Type': 'application/json', + ...options.headers, + }, + }); + +/** + * Update an expense + * + * Updates an expense + * + * ## Scopes + * + * | Category | Read only Scope | Write only Scope (read access implicit) | + * |---|---|---| + * | Manage expenses (`employment_payments`) | - | Manage expenses (`expense:write`) | + * + */ +export const patchV1ExpensesId = ( + options: Options, ) => - (options.client ?? client).post< - PostV1ContractorsEmploymentsEmploymentIdContractDocumentsResponses, - PostV1ContractorsEmploymentsEmploymentIdContractDocumentsErrors, + (options.client ?? client).put< + PatchV1ExpensesIdResponses, + PatchV1ExpensesIdErrors, ThrowOnError >({ - security: [ - { scheme: 'bearer', type: 'http' }, - { scheme: 'bearer', type: 'http' }, - ], - url: '/v1/contractors/employments/{employment_id}/contract-documents', + url: '/v1/expenses/{id}', ...options, headers: { 'Content-Type': 'application/json', @@ -6527,93 +5548,121 @@ export const postV1ContractorsEmploymentsEmploymentIdContractDocuments = < }); /** - * Trigger a Webhook + * Update emergency contact * - * Triggers a callback previously registered for webhooks. Use this endpoint to - * emit a webhook for testing in the Sandbox environment. This endpoint will - * respond with a 404 outside of the Sandbox environment. + * Updates the employment's emergency contact details. + * + * This endpoint requires country-specific data. Query the **Show form schema** endpoint + * passing the country code and `emergency_contact_details` as path parameters to see + * the required fields for a given country. + * + * + * ## Scopes + * + * | Category | Read only Scope | Write only Scope (read access implicit) | + * |---|---|---| + * | Manage employments (`employments`) | - | Manage employments (`employment:write`) | * */ -export const postV1SandboxWebhookCallbacksTrigger = < +export const putV2EmploymentsEmploymentIdEmergencyContact = < ThrowOnError extends boolean = false, >( - options?: Options, + options: Options< + PutV2EmploymentsEmploymentIdEmergencyContactData, + ThrowOnError + >, ) => - (options?.client ?? client).post< - PostV1SandboxWebhookCallbacksTriggerResponses, - PostV1SandboxWebhookCallbacksTriggerErrors, + (options.client ?? client).put< + PutV2EmploymentsEmploymentIdEmergencyContactResponses, + PutV2EmploymentsEmploymentIdEmergencyContactErrors, ThrowOnError >({ - security: [ - { scheme: 'bearer', type: 'http' }, - { scheme: 'bearer', type: 'http' }, - ], - url: '/v1/sandbox/webhook-callbacks/trigger', + url: '/v2/employments/{employment_id}/emergency_contact', ...options, headers: { 'Content-Type': 'application/json', - ...options?.headers, + ...options.headers, }, }); /** - * Download payslip in the PDF format + * Remove a pre-onboarding acknowledgement * - * Given a Payslip ID, downloads a payslip. - * It is important to note that each country has a different payslip format and they are not authored by Remote. + * Removes a previously recorded acknowledgement. Rejected once a requirement that depends on + * this acknowledgement has been signed/completed. * * * ## Scopes * * | Category | Read only Scope | Write only Scope (read access implicit) | * |---|---|---| - * | Manage employment documents (`employment_documents`) | View payslips (`payslip:read`) | - | + * | Manage employment documents (`employment_documents`) | - | Manage documents (`document:write`) | * */ -export const getV1PayslipsPayslipIdPdf = ( - options: Options, -) => - (options.client ?? client).get< - GetV1PayslipsPayslipIdPdfResponses, - GetV1PayslipsPayslipIdPdfErrors, - ThrowOnError - >({ - security: [ - { scheme: 'bearer', type: 'http' }, - { scheme: 'bearer', type: 'http' }, - ], - url: '/v1/payslips/{payslip_id}/pdf', - ...options, - }); +export const deleteV1OnboardingEmploymentsEmploymentIdPreOnboardingRequirementsRequirementSlugAcknowledge = + ( + options: Options< + DeleteV1OnboardingEmploymentsEmploymentIdPreOnboardingRequirementsRequirementSlugAcknowledgeData, + ThrowOnError + >, + ) => + (options.client ?? client).delete< + DeleteV1OnboardingEmploymentsEmploymentIdPreOnboardingRequirementsRequirementSlugAcknowledgeResponses, + DeleteV1OnboardingEmploymentsEmploymentIdPreOnboardingRequirementsRequirementSlugAcknowledgeErrors, + ThrowOnError + >({ + url: '/v1/onboarding/employments/{employment_id}/pre-onboarding-requirements/{requirement_slug}/acknowledge', + ...options, + }); /** - * Convert currency using dynamic rates + * Acknowledge a pre-onboarding acknowledgement requirement + * + * Records an acknowledgement for an acknowledgement requirement. Rejected if the requirement + * is blocked by an unmet dependency or has already been acknowledged. * - * Convert currency using the rates Remote applies during employment creation and invoicing. * * ## Scopes * * | Category | Read only Scope | Write only Scope (read access implicit) | * |---|---|---| - * | Manage company resources (`company_admin`) | Convert currencies (`convert_currency:read`) | - | + * | Manage employment documents (`employment_documents`) | - | Manage documents (`document:write`) | * */ -export const postV1CurrencyConverterEffective = < +export const postV1OnboardingEmploymentsEmploymentIdPreOnboardingRequirementsRequirementSlugAcknowledge = + ( + options: Options< + PostV1OnboardingEmploymentsEmploymentIdPreOnboardingRequirementsRequirementSlugAcknowledgeData, + ThrowOnError + >, + ) => + (options.client ?? client).post< + PostV1OnboardingEmploymentsEmploymentIdPreOnboardingRequirementsRequirementSlugAcknowledgeResponses, + PostV1OnboardingEmploymentsEmploymentIdPreOnboardingRequirementsRequirementSlugAcknowledgeErrors, + ThrowOnError + >({ + url: '/v1/onboarding/employments/{employment_id}/pre-onboarding-requirements/{requirement_slug}/acknowledge', + ...options, + }); + +/** + * Creates a Benefit Renewal Request + * + * Creates a Benefit Renewal Request for a specific Benefit Group. + * This endpoint is only available in Sandbox, otherwise it will respond with a 404. + * + */ +export const postV1SandboxBenefitRenewalRequests = < ThrowOnError extends boolean = false, >( - options: Options, + options: Options, ) => (options.client ?? client).post< - PostV1CurrencyConverterEffectiveResponses, - PostV1CurrencyConverterEffectiveErrors, + PostV1SandboxBenefitRenewalRequestsResponses, + PostV1SandboxBenefitRenewalRequestsErrors, ThrowOnError >({ - security: [ - { scheme: 'bearer', type: 'http' }, - { scheme: 'bearer', type: 'http' }, - { scheme: 'bearer', type: 'http' }, - ], - url: '/v1/currency-converter/effective', + url: '/v1/sandbox/benefit-renewal-requests', ...options, headers: { 'Content-Type': 'application/json', @@ -6622,61 +5671,95 @@ export const postV1CurrencyConverterEffective = < }); /** - * Show Time Off + * Get basic information + * + * Returns the employment's basic information. + * + * This endpoint requires and returns country-specific data. The exact required and returned fields will + * vary depending on which country the employment is in. To see the list of parameters for each country, + * see the **Show form schema** endpoint under the [Countries](#tag/Countries) category. + * + * Please note that the compliance requirements for each country are subject to change according to local + * laws. Given its continual updates, using Remote's [json-schema-form](https://developer.remote.com/docs/how-json-schemas-work) should be considered in order to avoid + * compliance issues and to have the latest version of a country requirements. + * + * If you are using this endpoint to build an integration, make sure you are dynamically collecting or + * displaying the latest parameters for each country by querying the _"Show form schema"_ endpoint. + * + * For more information on JSON Schemas, see the **How JSON Schemas work** documentation. + * + * To learn how you can dynamically generate forms to display in your UI, see the documentation for + * the [json-schema-form](https://developer.remote.com/docs/how-json-schemas-work) tool. + * * - * Shows a single Time Off record * * ## Scopes * * | Category | Read only Scope | Write only Scope (read access implicit) | * |---|---|---| - * | Manage timeoffs (`time_and_attendance`) | View timeoffs (`timeoff:read`) | Manage timeoffs (`timeoff:write`) | + * | Manage employments (`employments`) | View employments (`employment:read`) | Manage employments (`employment:write`) | * */ -export const getV1TimeoffId = ( - options: Options, +export const getV2EmploymentsEmploymentIdBasicInformation = < + ThrowOnError extends boolean = false, +>( + options: Options< + GetV2EmploymentsEmploymentIdBasicInformationData, + ThrowOnError + >, ) => (options.client ?? client).get< - GetV1TimeoffIdResponses, - GetV1TimeoffIdErrors, + GetV2EmploymentsEmploymentIdBasicInformationResponses, + GetV2EmploymentsEmploymentIdBasicInformationErrors, ThrowOnError - >({ - security: [ - { scheme: 'bearer', type: 'http' }, - { scheme: 'bearer', type: 'http' }, - ], - url: '/v1/timeoff/{id}', - ...options, - }); + >({ url: '/v2/employments/{employment_id}/basic_information', ...options }); /** - * Update Time Off + * Update basic information + * + * Updates employment's basic information. + * + * Supported employment statuses: `created`, `job_title_review`, `created_reserve_paid`, `created_awaiting_reserve`. + * + * This endpoint requires and returns country-specific data. The exact required and returned fields will + * vary depending on which country the employment is in. To see the list of parameters for each country, + * see the **Show form schema** endpoint under the [Countries](#tag/Countries) category. + * + * Please note that the compliance requirements for each country are subject to change according to local + * laws. Given its continual updates, using Remote's [json-schema-form](https://developer.remote.com/docs/how-json-schemas-work) should be considered in order to avoid + * compliance issues and to have the latest version of a country requirements. + * + * If you are using this endpoint to build an integration, make sure you are dynamically collecting or + * displaying the latest parameters for each country by querying the _"Show form schema"_ endpoint. + * + * For more information on JSON Schemas, see the **How JSON Schemas work** documentation. + * + * To learn how you can dynamically generate forms to display in your UI, see the documentation for + * the [json-schema-form](https://developer.remote.com/docs/how-json-schemas-work) tool. * - * Updates a Time Off record. - * Warning: Updating the status of a time off through this endpoint is deprecated and will be removed on January 13, 2025. - * To approve or cancel an approved time off, use the `/approve` and `/cancel` endpoints instead. * * * ## Scopes * * | Category | Read only Scope | Write only Scope (read access implicit) | * |---|---|---| - * | Manage timeoffs (`time_and_attendance`) | - | Manage timeoffs (`timeoff:write`) | + * | Manage employments (`employments`) | - | Manage employments (`employment:write`) | * */ -export const patchV1TimeoffId2 = ( - options: Options, +export const putV2EmploymentsEmploymentIdBasicInformation = < + ThrowOnError extends boolean = false, +>( + options: Options< + PutV2EmploymentsEmploymentIdBasicInformationData, + ThrowOnError + >, ) => - (options.client ?? client).patch< - PatchV1TimeoffId2Responses, - PatchV1TimeoffId2Errors, + (options.client ?? client).put< + PutV2EmploymentsEmploymentIdBasicInformationResponses, + PutV2EmploymentsEmploymentIdBasicInformationErrors, ThrowOnError >({ - security: [ - { scheme: 'bearer', type: 'http' }, - { scheme: 'bearer', type: 'http' }, - ], - url: '/v1/timeoff/{id}', + url: '/v2/employments/{employment_id}/basic_information', ...options, headers: { 'Content-Type': 'application/json', @@ -6685,44 +5768,32 @@ export const patchV1TimeoffId2 = ( }); /** - * Update Time Off - * - * Updates a Time Off record. - * Warning: Updating the status of a time off through this endpoint is deprecated and will be removed on January 13, 2025. - * To approve or cancel an approved time off, use the `/approve` and `/cancel` endpoints instead. + * List Leave Policies Summary * + * List all the data related to time off for a given employment * * ## Scopes * * | Category | Read only Scope | Write only Scope (read access implicit) | * |---|---|---| - * | Manage timeoffs (`time_and_attendance`) | - | Manage timeoffs (`timeoff:write`) | + * | Manage timeoffs (`time_and_attendance`) | View timeoffs (`timeoff:read`) | Manage timeoffs (`timeoff:write`) | * */ -export const patchV1TimeoffId = ( - options: Options, +export const getV1LeavePoliciesSummaryEmploymentId = < + ThrowOnError extends boolean = false, +>( + options: Options, ) => - (options.client ?? client).put< - PatchV1TimeoffIdResponses, - PatchV1TimeoffIdErrors, + (options.client ?? client).get< + GetV1LeavePoliciesSummaryEmploymentIdResponses, + GetV1LeavePoliciesSummaryEmploymentIdErrors, ThrowOnError - >({ - security: [ - { scheme: 'bearer', type: 'http' }, - { scheme: 'bearer', type: 'http' }, - ], - url: '/v1/timeoff/{id}', - ...options, - headers: { - 'Content-Type': 'application/json', - ...options.headers, - }, - }); + >({ url: '/v1/leave-policies/summary/{employment_id}', ...options }); /** - * Decline Time Off + * Cancel Time Off * - * Decline a time off request. Please note that only time off requests on the `requested` status can be declined. + * Cancel a time off request that was already approved. * * ## Scopes * @@ -6731,21 +5802,17 @@ export const patchV1TimeoffId = ( * | Manage timeoffs (`time_and_attendance`) | - | Manage timeoffs (`timeoff:write`) | * */ -export const postV1TimeoffTimeoffIdDecline = < +export const postV1TimeoffTimeoffIdCancel = < ThrowOnError extends boolean = false, >( - options: Options, + options: Options, ) => (options.client ?? client).post< - PostV1TimeoffTimeoffIdDeclineResponses, - PostV1TimeoffTimeoffIdDeclineErrors, + PostV1TimeoffTimeoffIdCancelResponses, + PostV1TimeoffTimeoffIdCancelErrors, ThrowOnError >({ - security: [ - { scheme: 'bearer', type: 'http' }, - { scheme: 'bearer', type: 'http' }, - ], - url: '/v1/timeoff/{timeoff_id}/decline', + url: '/v1/timeoff/{timeoff_id}/cancel', ...options, headers: { 'Content-Type': 'application/json', @@ -6754,125 +5821,84 @@ export const postV1TimeoffTimeoffIdDecline = < }); /** - * Automatable Contract Amendment - * - * Check if a contract amendment request is automatable. - * If the contract amendment request is automatable, then after submission, it will instantly amend the employee's contract - * and send them an updated document. - * - * This endpoint requires and returns country-specific data. The exact required and returned fields will - * vary depending on which country the employment is in. To see the list of parameters for each country, - * see the **Show form schema** endpoint under the [Contract Amendments](#tag/Contract-Amendments) category. - * - * Please note that the compliance requirements for each country are subject to change according to local - * laws. Given its continual updates, using Remote's [json-schema-form](https://developer.remote.com/docs/how-json-schemas-work) should be considered in order to avoid - * compliance issues and to have the latest version of a country requirements. - * - * If you are using this endpoint to build an integration, make sure you are dynamically collecting or - * displaying the latest parameters for each country by querying the _"Show form schema"_ endpoint. - * - * For more information on JSON Schemas, see the **How JSON Schemas work** documentation. - * - * To learn how you can dynamically generate forms to display in your UI, see the documentation for - * the [json-schema-form](https://developer.remote.com/docs/how-json-schemas-work) tool. - * + * Get Help Center Article * + * Get a help center article by its ID * * ## Scopes * * | Category | Read only Scope | Write only Scope (read access implicit) | * |---|---|---| - * | Manage employments (`employments`) | - | Manage contract amendments (`contract_amendment:write`) | + * | Manage company resources (`company_admin`) | View help articles (`help_center_article:read`) | - | * */ -export const postV1ContractAmendmentsAutomatable = < - ThrowOnError extends boolean = false, ->( - options: Options, +export const getV1HelpCenterArticlesId = ( + options: Options, ) => - (options.client ?? client).post< - PostV1ContractAmendmentsAutomatableResponses, - PostV1ContractAmendmentsAutomatableErrors, + (options.client ?? client).get< + GetV1HelpCenterArticlesIdResponses, + GetV1HelpCenterArticlesIdErrors, ThrowOnError - >({ - security: [ - { scheme: 'bearer', type: 'http' }, - { scheme: 'bearer', type: 'http' }, - ], - url: '/v1/contract-amendments/automatable', - ...options, - headers: { - 'Content-Type': 'application/json', - ...options.headers, - }, - }); + >({ url: '/v1/help-center-articles/{id}', ...options }); /** - * Approve Time Off + * Upload file + * + * Uploads a file associated with a specified employment. + * + * Please contact api-support@remote.com to request access to this endpoint. * - * Approve a time off request. * * ## Scopes * * | Category | Read only Scope | Write only Scope (read access implicit) | * |---|---|---| - * | Manage timeoffs (`time_and_attendance`) | - | Manage timeoffs (`timeoff:write`) | + * | Manage employment documents (`employment_documents`) | - | Manage documents (`document:write`) | * - */ -export const postV1TimeoffTimeoffIdApprove = < - ThrowOnError extends boolean = false, ->( - options: Options, + */ +export const postV1Documents = ( + options: Options, ) => (options.client ?? client).post< - PostV1TimeoffTimeoffIdApproveResponses, - PostV1TimeoffTimeoffIdApproveErrors, + PostV1DocumentsResponses, + PostV1DocumentsErrors, ThrowOnError >({ - security: [ - { scheme: 'bearer', type: 'http' }, - { scheme: 'bearer', type: 'http' }, - ], - url: '/v1/timeoff/{timeoff_id}/approve', + ...formDataBodySerializer, + url: '/v1/documents', ...options, headers: { - 'Content-Type': 'application/json', + 'Content-Type': null, ...options.headers, }, }); /** - * List employment files - * - * Lists files associated with a specific employment. + * Verify Employment Identity * - * Supports filtering by file type and sub_type. + * Endpoint to confirms the employment profile is from the actual employee * * * ## Scopes * * | Category | Read only Scope | Write only Scope (read access implicit) | * |---|---|---| - * | Manage employment documents (`employment_documents`) | View documents (`document:read`) | Manage documents (`document:write`) | + * | Manage employment documents (`employment_documents`) | - | Manage identity verification (`identity_verification:write`) | * */ -export const getV1EmploymentsEmploymentIdFiles = < +export const postV1IdentityVerificationEmploymentIdVerify = < ThrowOnError extends boolean = false, >( - options: Options, + options: Options< + PostV1IdentityVerificationEmploymentIdVerifyData, + ThrowOnError + >, ) => - (options.client ?? client).get< - GetV1EmploymentsEmploymentIdFilesResponses, - GetV1EmploymentsEmploymentIdFilesErrors, + (options.client ?? client).post< + PostV1IdentityVerificationEmploymentIdVerifyResponses, + PostV1IdentityVerificationEmploymentIdVerifyErrors, ThrowOnError - >({ - security: [ - { scheme: 'bearer', type: 'http' }, - { scheme: 'bearer', type: 'http' }, - ], - url: '/v1/employments/{employment_id}/files', - ...options, - }); + >({ url: '/v1/identity-verification/{employment_id}/verify', ...options }); /** * Lists custom fields definitions @@ -6893,14 +5919,7 @@ export const getV1CustomFields = ( GetV1CustomFieldsResponses, GetV1CustomFieldsErrors, ThrowOnError - >({ - security: [ - { scheme: 'bearer', type: 'http' }, - { scheme: 'bearer', type: 'http' }, - ], - url: '/v1/custom-fields', - ...options, - }); + >({ url: '/v1/custom-fields', ...options }); /** * Create Custom Field Definition @@ -6922,10 +5941,6 @@ export const postV1CustomFields = ( PostV1CustomFieldsErrors, ThrowOnError >({ - security: [ - { scheme: 'bearer', type: 'http' }, - { scheme: 'bearer', type: 'http' }, - ], url: '/v1/custom-fields', ...options, headers: { @@ -6935,299 +5950,371 @@ export const postV1CustomFields = ( }); /** - * List company supported currencies + * Approve risk reserve proof of payment * - * List company supported currencies + * Approves a risk reserve proof of payment without the intervention of a Remote admin. + * + * Triggers an `employment.cor_hiring.proof_of_payment_accepted` webhook event. + * + * This endpoint is only available in Sandbox, otherwise it will respond with a 404. + * + */ +export const postV1SandboxEmploymentsEmploymentIdRiskReserveProofOfPaymentsApprove = + ( + options: Options< + PostV1SandboxEmploymentsEmploymentIdRiskReserveProofOfPaymentsApproveData, + ThrowOnError + >, + ) => + (options.client ?? client).post< + PostV1SandboxEmploymentsEmploymentIdRiskReserveProofOfPaymentsApproveResponses, + PostV1SandboxEmploymentsEmploymentIdRiskReserveProofOfPaymentsApproveErrors, + ThrowOnError + >({ + url: '/v1/sandbox/employments/{employment_id}/risk-reserve-proof-of-payments/approve', + ...options, + }); + +/** + * Create a Webhook Callback + * + * Register a callback to be used for webhooks * * ## Scopes * * | Category | Read only Scope | Write only Scope (read access implicit) | * |---|---|---| - * | Manage company resources (`company_admin`) | View company currencies (`company_currencies:read`) | - | + * | Manage company resources (`company_admin`) | - | Manage webhooks (`webhook:write`) | * */ -export const getV1CompanyCurrencies = ( - options?: Options, +export const postV1WebhookCallbacks = ( + options: Options, ) => - (options?.client ?? client).get< - GetV1CompanyCurrenciesResponses, - GetV1CompanyCurrenciesErrors, + (options.client ?? client).post< + PostV1WebhookCallbacksResponses, + PostV1WebhookCallbacksErrors, ThrowOnError >({ - security: [ - { scheme: 'bearer', type: 'http' }, - { scheme: 'bearer', type: 'http' }, - { scheme: 'bearer', type: 'http' }, - ], - url: '/v1/company-currencies', + url: '/v1/webhook-callbacks', ...options, + headers: { + 'Content-Type': 'application/json', + ...options.headers, + }, }); /** - * Update employment + * Show the SSO Configuration Details * - * Updates an employment. Use this endpoint to: - * - modify employment states for testing - * - Backdate employment start dates + * Shows the SSO Configuration details for the company. * - * This endpoint will respond with a 404 outside of the Sandbox environment. + * ## Scopes * - * For updating an employment's parameters outside of testing purposes, use [this Employment update endpoint](#operation/patch_update_employment). + * | Category | Read only Scope | Write only Scope (read access implicit) | + * |---|---|---| + * | Manage company resources (`company_admin`) | - | Manage SSO (`sso_configuration:write`) | * */ -export const patchV1SandboxEmploymentsEmploymentId2 = < +export const getV1SsoConfigurationDetails = < ThrowOnError extends boolean = false, >( - options: Options, + options?: Options, ) => - (options.client ?? client).patch< - PatchV1SandboxEmploymentsEmploymentId2Responses, - PatchV1SandboxEmploymentsEmploymentId2Errors, + (options?.client ?? client).get< + GetV1SsoConfigurationDetailsResponses, + GetV1SsoConfigurationDetailsErrors, + ThrowOnError + >({ url: '/v1/sso-configuration/details', ...options }); + +/** + * Sign a document for a contractor + * + * ## Scopes + * + * | Category | Read only Scope | Write only Scope (read access implicit) | + * |---|---|---| + * | Manage employment documents (`employment_documents`) | - | Manage documents (`document:write`) | + * + */ +export const postV1ContractorsEmploymentsEmploymentIdContractDocumentsContractDocumentIdSign = + ( + options: Options< + PostV1ContractorsEmploymentsEmploymentIdContractDocumentsContractDocumentIdSignData, + ThrowOnError + >, + ) => + (options.client ?? client).post< + PostV1ContractorsEmploymentsEmploymentIdContractDocumentsContractDocumentIdSignResponses, + PostV1ContractorsEmploymentsEmploymentIdContractDocumentsContractDocumentIdSignErrors, + ThrowOnError + >({ + url: '/v1/contractors/employments/{employment_id}/contract-documents/{contract_document_id}/sign', + ...options, + headers: { + 'Content-Type': 'application/json', + ...options.headers, + }, + }); + +/** + * List Pay Items + * + * Lists pay items for a company with optional filtering by employment, date range, and pagination. + * + * ## Scopes + * + * | Category | Read only Scope | Write only Scope (read access implicit) | + * |---|---|---| + * | Manage payroll runs (`payroll`) | View pay items (`pay_item:read`) | Manage pay items (`pay_item:write`) | + * + */ +export const getV1PayItems = ( + options?: Options, +) => + (options?.client ?? client).get< + GetV1PayItemsResponses, + GetV1PayItemsErrors, + ThrowOnError + >({ url: '/v1/pay-items', ...options }); + +/** + * List users via SCIM v2.0 + * + * Retrieves a list of users for the authenticated company following SCIM 2.0 standard + */ +export const getV1ScimV2Users = ( + options?: Options, +) => + (options?.client ?? client).get< + GetV1ScimV2UsersResponses, + GetV1ScimV2UsersErrors, ThrowOnError >({ - security: [ - { scheme: 'bearer', type: 'http' }, - { scheme: 'bearer', type: 'http' }, - ], - url: '/v1/sandbox/employments/{employment_id}', + security: [{ scheme: 'bearer', type: 'http' }], + url: '/v1/scim/v2/Users', ...options, - headers: { - 'Content-Type': 'application/json', - ...options.headers, - }, }); /** - * Update employment + * Show Resignation * - * Updates an employment. Use this endpoint to: - * - modify employment states for testing - * - Backdate employment start dates + * Shows the details of a resignation with status `submitted`. * - * This endpoint will respond with a 404 outside of the Sandbox environment. + * ## Scopes * - * For updating an employment's parameters outside of testing purposes, use [this Employment update endpoint](#operation/patch_update_employment). + * | Category | Read only Scope | Write only Scope (read access implicit) | + * |---|---|---| + * | Manage employments (`employments`) | View resignations (`resignation:read`) | Manage resignations (`resignation:write`) | * */ -export const patchV1SandboxEmploymentsEmploymentId = < +export const getV1ResignationsOffboardingRequestId = < ThrowOnError extends boolean = false, >( - options: Options, + options: Options, ) => - (options.client ?? client).put< - PatchV1SandboxEmploymentsEmploymentIdResponses, - PatchV1SandboxEmploymentsEmploymentIdErrors, + (options.client ?? client).get< + GetV1ResignationsOffboardingRequestIdResponses, + GetV1ResignationsOffboardingRequestIdErrors, ThrowOnError - >({ - security: [ - { scheme: 'bearer', type: 'http' }, - { scheme: 'bearer', type: 'http' }, - ], - url: '/v1/sandbox/employments/{employment_id}', - ...options, - headers: { - 'Content-Type': 'application/json', - ...options.headers, - }, - }); + >({ url: '/v1/resignations/{offboarding_request_id}', ...options }); /** - * Get employment contract pending changes + * Get Billing Document Breakdown * - * Get all the pending changes (waiting for aproval or signature) for the employment contract. + * Get billing document breakdown * * ## Scopes * * | Category | Read only Scope | Write only Scope (read access implicit) | * |---|---|---| - * | Manage employments (`employments`) | View contracts (`contract:read`) | - | + * | Manage invoices (`invoices`) | View invoices (`invoices:read`) | Manage invoices (`invoices:write`) | * */ -export const getV1EmploymentContractsEmploymentIdPendingChanges = < +export const getV1BillingDocumentsBillingDocumentIdBreakdown = < ThrowOnError extends boolean = false, >( options: Options< - GetV1EmploymentContractsEmploymentIdPendingChangesData, + GetV1BillingDocumentsBillingDocumentIdBreakdownData, ThrowOnError >, ) => (options.client ?? client).get< - GetV1EmploymentContractsEmploymentIdPendingChangesResponses, - GetV1EmploymentContractsEmploymentIdPendingChangesErrors, + GetV1BillingDocumentsBillingDocumentIdBreakdownResponses, + GetV1BillingDocumentsBillingDocumentIdBreakdownErrors, ThrowOnError >({ - security: [ - { scheme: 'bearer', type: 'http' }, - { scheme: 'bearer', type: 'http' }, - ], - url: '/v1/employment-contracts/{employment_id}/pending-changes', + url: '/v1/billing-documents/{billing_document_id}/breakdown', ...options, }); /** - * Show Resignation + * Decline a time off cancellation request + * + * Decline a time off cancellation request. * - * Shows the details of a resignation with status `submitted`. * * ## Scopes * * | Category | Read only Scope | Write only Scope (read access implicit) | * |---|---|---| - * | Manage employments (`employments`) | View resignations (`resignation:read`) | Manage resignations (`resignation:write`) | + * | Manage timeoffs (`time_and_attendance`) | - | Manage timeoffs (`timeoff:write`) | * */ -export const getV1ResignationsOffboardingRequestId = < +export const postV1TimeoffTimeoffIdCancelRequestDecline = < ThrowOnError extends boolean = false, >( - options: Options, + options: Options< + PostV1TimeoffTimeoffIdCancelRequestDeclineData, + ThrowOnError + >, ) => - (options.client ?? client).get< - GetV1ResignationsOffboardingRequestIdResponses, - GetV1ResignationsOffboardingRequestIdErrors, + (options.client ?? client).post< + PostV1TimeoffTimeoffIdCancelRequestDeclineResponses, + PostV1TimeoffTimeoffIdCancelRequestDeclineErrors, ThrowOnError >({ - security: [ - { scheme: 'bearer', type: 'http' }, - { scheme: 'bearer', type: 'http' }, - ], - url: '/v1/resignations/{offboarding_request_id}', + url: '/v1/timeoff/{timeoff_id}/cancel-request/decline', ...options, + headers: { + 'Content-Type': 'application/json', + ...options.headers, + }, }); /** - * Upload file - * - * Uploads a file associated with a specified employment. - * - * Please contact api-support@remote.com to request access to this endpoint. + * List EOR Payroll Calendar * + * List all active payroll calendars for EOR. * * ## Scopes * * | Category | Read only Scope | Write only Scope (read access implicit) | * |---|---|---| - * | Manage employment documents (`employment_documents`) | - | Manage documents (`document:write`) | + * | Manage payroll runs (`payroll`) | View payroll calendars (`payroll_calendar:read`) | - | * */ -export const postV1Documents = ( - options: Options, +export const getV1PayrollCalendars = ( + options?: Options, ) => - (options.client ?? client).post< - PostV1DocumentsResponses, - PostV1DocumentsErrors, + (options?.client ?? client).get< + GetV1PayrollCalendarsResponses, + GetV1PayrollCalendarsErrors, + ThrowOnError + >({ url: '/v1/payroll-calendars', ...options }); + +/** + * Payroll processing details API resource + * + * API to retrieve header details of a pay group + */ +export const getV1WdGphPayDetail = ( + options: Options, +) => + (options.client ?? client).get< + GetV1WdGphPayDetailResponses, + GetV1WdGphPayDetailErrors, ThrowOnError >({ - ...formDataBodySerializer, - security: [ - { scheme: 'bearer', type: 'http' }, - { scheme: 'bearer', type: 'http' }, - ], - url: '/v1/documents', + security: [{ scheme: 'bearer', type: 'http' }], + url: '/v1/wd/gph/payDetail', ...options, - headers: { - 'Content-Type': null, - ...options.headers, - }, }); /** - * Invite employment - * - * Invite an employment to start the self-enrollment. - * - * Requirements for the invitation to succeed: - * - * * Employment needs to have the following JSON Schema forms filled: `contract_details` and `pricing_plan_details` - * * `provisional_start_date` must consider the minimum onboarding time of the employment's country - * - * If there are validations errors, they are returned with a Conflict HTTP Status (409) and a descriptive message. - * HTTP Status OK (200) is returned in case of success. - * - * In case of the following error message: - * `"Please reselect benefits - the previous selection is no longer available"` - * it means that the benefit options have been updated and the employment's benefits are no longer compliant with the new schema. + * Show form schema * - * In this case, reselect benefits by updating `contract_details` JSON Schema form. + * Returns the json schema of the `contract_amendment` form for a specific employment. + * This endpoint requires a company access token, as forms are dependent on certain + * properties of companies and their current employments. * * * ## Scopes * * | Category | Read only Scope | Write only Scope (read access implicit) | * |---|---|---| - * | Manage employments (`employments`) | - | Manage employments (`employment:write`) | + * | Manage employments (`employments`) | View contract amendments (`contract_amendment:read`) | Manage contract amendments (`contract_amendment:write`) | * */ -export const postV1EmploymentsEmploymentIdInvite = < +export const getV1ContractAmendmentsSchema = < ThrowOnError extends boolean = false, >( - options: Options, + options: Options, ) => - (options.client ?? client).post< - PostV1EmploymentsEmploymentIdInviteResponses, - PostV1EmploymentsEmploymentIdInviteErrors, + (options.client ?? client).get< + GetV1ContractAmendmentsSchemaResponses, + GetV1ContractAmendmentsSchemaErrors, ThrowOnError - >({ - security: [ - { scheme: 'bearer', type: 'http' }, - { scheme: 'bearer', type: 'http' }, - ], - url: '/v1/employments/{employment_id}/invite', - ...options, - }); + >({ url: '/v1/contract-amendments/schema', ...options }); /** - * Show expense + * Get a mock JSON Schema + * + * Get a mock JSON Schema for testing purposes + */ +export const getV1TestSchema = ( + options?: Options, +) => + (options?.client ?? client).get< + GetV1TestSchemaResponses, + unknown, + ThrowOnError + >({ url: '/v1/test-schema', ...options }); + +/** + * Download the Employment Agreement for an employment + * + * Downloads a PDF of the auto-generated Employment Agreement for an employment. + * + * The document is rendered as a draft (no signatures) and is not persisted. EA preview is only + * available for countries that have a published Employment Agreement automation template — see the + * `employment_agreement_preview_available` flag on the [Countries](#tag/Countries) endpoint. * - * Shows a single expense record * * ## Scopes * * | Category | Read only Scope | Write only Scope (read access implicit) | * |---|---|---| - * | Manage expenses (`employment_payments`) | View expenses (`expense:read`) | Manage expenses (`expense:write`) | + * | Manage employment documents (`employment_documents`) | View documents (`document:read`) | Manage documents (`document:write`) | * */ -export const getV1ExpensesId = ( - options: Options, +export const getV1EmploymentsEmploymentIdEmploymentAgreementDownload = < + ThrowOnError extends boolean = false, +>( + options: Options< + GetV1EmploymentsEmploymentIdEmploymentAgreementDownloadData, + ThrowOnError + >, ) => (options.client ?? client).get< - GetV1ExpensesIdResponses, - GetV1ExpensesIdErrors, + GetV1EmploymentsEmploymentIdEmploymentAgreementDownloadResponses, + GetV1EmploymentsEmploymentIdEmploymentAgreementDownloadErrors, ThrowOnError >({ - security: [ - { scheme: 'bearer', type: 'http' }, - { scheme: 'bearer', type: 'http' }, - ], - url: '/v1/expenses/{id}', + url: '/v1/employments/{employment_id}/employment-agreement/download', ...options, }); /** - * Update an expense + * Update Time Off as Employee * - * Updates an expense + * Updates a Time Off record as Employee * * ## Scopes * * | Category | Read only Scope | Write only Scope (read access implicit) | * |---|---|---| - * | Manage expenses (`employment_payments`) | - | Manage expenses (`expense:write`) | + * | Manage timeoffs (`time_and_attendance`) | - | Manage timeoffs (`timeoff:write`) | * */ -export const patchV1ExpensesId2 = ( - options: Options, +export const patchV1EmployeeTimeoffId2 = ( + options: Options, ) => (options.client ?? client).patch< - PatchV1ExpensesId2Responses, - PatchV1ExpensesId2Errors, + PatchV1EmployeeTimeoffId2Responses, + PatchV1EmployeeTimeoffId2Errors, ThrowOnError >({ - security: [ - { scheme: 'bearer', type: 'http' }, - { scheme: 'bearer', type: 'http' }, - ], - url: '/v1/expenses/{id}', + url: '/v1/employee/timeoff/{id}', ...options, headers: { 'Content-Type': 'application/json', @@ -7236,30 +6323,26 @@ export const patchV1ExpensesId2 = ( }); /** - * Update an expense + * Update Time Off as Employee * - * Updates an expense + * Updates a Time Off record as Employee * * ## Scopes * * | Category | Read only Scope | Write only Scope (read access implicit) | * |---|---|---| - * | Manage expenses (`employment_payments`) | - | Manage expenses (`expense:write`) | + * | Manage timeoffs (`time_and_attendance`) | - | Manage timeoffs (`timeoff:write`) | * */ -export const patchV1ExpensesId = ( - options: Options, +export const patchV1EmployeeTimeoffId = ( + options: Options, ) => (options.client ?? client).put< - PatchV1ExpensesIdResponses, - PatchV1ExpensesIdErrors, + PatchV1EmployeeTimeoffIdResponses, + PatchV1EmployeeTimeoffIdErrors, ThrowOnError >({ - security: [ - { scheme: 'bearer', type: 'http' }, - { scheme: 'bearer', type: 'http' }, - ], - url: '/v1/expenses/{id}', + url: '/v1/employee/timeoff/{id}', ...options, headers: { 'Content-Type': 'application/json', @@ -7268,349 +6351,261 @@ export const patchV1ExpensesId = ( }); /** - * Update bank account details - * - * Updates employment's bank account details. - * - * This endpoint requires and returns country-specific data. The exact required and returned fields will - * vary depending on which country the employment is in. To see the list of parameters for each country, - * see the **Show form schema** endpoint under the [Countries](#tag/Countries) category. - * - * Please note that the compliance requirements for each country are subject to change according to local - * laws. Given its continual updates, using Remote's [json-schema-form](https://developer.remote.com/docs/how-json-schemas-work) should be considered in order to avoid - * compliance issues and to have the latest version of a country requirements. - * - * If you are using this endpoint to build an integration, make sure you are dynamically collecting or - * displaying the latest parameters for each country by querying the _"Show form schema"_ endpoint. - * - * For more information on JSON Schemas, see the **How JSON Schemas work** documentation. - * - * To learn how you can dynamically generate forms to display in your UI, see the documentation for - * the [json-schema-form](https://developer.remote.com/docs/how-json-schemas-form) tool. - * - * - * - * ## Scopes - * - * | Category | Read only Scope | Write only Scope (read access implicit) | - * |---|---|---| - * | Manage employments (`employments`) | - | Manage employments (`employment:write`) | + * Get group by ID via SCIM v2.0 * + * Retrieves a single group (department) for the authenticated company by group ID */ -export const putV2EmploymentsEmploymentIdBankAccountDetails = < - ThrowOnError extends boolean = false, ->( - options: Options< - PutV2EmploymentsEmploymentIdBankAccountDetailsData, - ThrowOnError - >, +export const getV1ScimV2GroupsId = ( + options: Options, ) => - (options.client ?? client).put< - PutV2EmploymentsEmploymentIdBankAccountDetailsResponses, - PutV2EmploymentsEmploymentIdBankAccountDetailsErrors, + (options.client ?? client).get< + GetV1ScimV2GroupsIdResponses, + GetV1ScimV2GroupsIdErrors, ThrowOnError >({ - security: [ - { scheme: 'bearer', type: 'http' }, - { scheme: 'bearer', type: 'http' }, - ], - url: '/v2/employments/{employment_id}/bank-account-details', + security: [{ scheme: 'bearer', type: 'http' }], + url: '/v1/scim/v2/Groups/{id}', ...options, - headers: { - 'Content-Type': 'application/json', - ...options.headers, - }, }); /** - * Show Benefit Renewal Request + * Show legal entity administrative details form schema + * + * Returns the json schema of a supported form. Possible form names are: + * ``` + * - administrative_details + * ``` + * + * Most forms require a company access token, as they are dependent on certain + * properties of companies and their current employments. + * * - * Show Benefit Renewal Request details. * * ## Scopes * * | Category | Read only Scope | Write only Scope (read access implicit) | * |---|---|---| - * | Manage company resources (`company_admin`) | View benefit renewals (`benefit_renewal:read`) | Manage benefit renewals (`benefit_renewal:write`) | + * | Manage company resources (`company_admin`) | View forms (`form:read`) | - | * */ -export const getV1BenefitRenewalRequestsBenefitRenewalRequestId = < +export const getV1CountriesCountryCodeLegalEntityFormsForm = < ThrowOnError extends boolean = false, >( options: Options< - GetV1BenefitRenewalRequestsBenefitRenewalRequestIdData, + GetV1CountriesCountryCodeLegalEntityFormsFormData, ThrowOnError >, ) => (options.client ?? client).get< - GetV1BenefitRenewalRequestsBenefitRenewalRequestIdResponses, - GetV1BenefitRenewalRequestsBenefitRenewalRequestIdErrors, + GetV1CountriesCountryCodeLegalEntityFormsFormResponses, + GetV1CountriesCountryCodeLegalEntityFormsFormErrors, ThrowOnError >({ - security: [ - { scheme: 'bearer', type: 'http' }, - { scheme: 'bearer', type: 'http' }, - ], - url: '/v1/benefit-renewal-requests/{benefit_renewal_request_id}', + url: '/v1/countries/{country_code}/legal_entity_forms/{form}', ...options, }); /** - * Updates a Benefit Renewal Request Response + * Get employment contract pending changes * - * Updates a Benefit Renewal Request with the given response. + * Get all the pending changes (waiting for aproval or signature) for the employment contract. * * ## Scopes * * | Category | Read only Scope | Write only Scope (read access implicit) | * |---|---|---| - * | Manage company resources (`company_admin`) | - | Manage benefit renewals (`benefit_renewal:write`) | + * | Manage employments (`employments`) | View contracts (`contract:read`) | - | * */ -export const postV1BenefitRenewalRequestsBenefitRenewalRequestId = < +export const getV1EmploymentContractsEmploymentIdPendingChanges = < ThrowOnError extends boolean = false, >( options: Options< - PostV1BenefitRenewalRequestsBenefitRenewalRequestIdData, + GetV1EmploymentContractsEmploymentIdPendingChangesData, ThrowOnError >, ) => - (options.client ?? client).post< - PostV1BenefitRenewalRequestsBenefitRenewalRequestIdResponses, - PostV1BenefitRenewalRequestsBenefitRenewalRequestIdErrors, + (options.client ?? client).get< + GetV1EmploymentContractsEmploymentIdPendingChangesResponses, + GetV1EmploymentContractsEmploymentIdPendingChangesErrors, ThrowOnError >({ - security: [ - { scheme: 'bearer', type: 'http' }, - { scheme: 'bearer', type: 'http' }, - ], - url: '/v1/benefit-renewal-requests/{benefit_renewal_request_id}', + url: '/v1/employment-contracts/{employment_id}/pending-changes', ...options, - headers: { - 'Content-Type': 'application/json', - ...options.headers, - }, }); /** - * Show onboarding steps for an employment + * Show Offboarding (v2) + * + * Returns a single offboarding by its ID. * - * Returns onboarding steps and substeps in a hierarchical, ordered structure. * * ## Scopes * * | Category | Read only Scope | Write only Scope (read access implicit) | * |---|---|---| - * | Manage employments (`employments`) | View employments (`employment:read`) | Manage employments (`employment:write`) | + * | Manage employments (`employments`) | View offboarding requests (`offboarding:read`) | Manage offboarding (`offboarding:write`) | * */ -export const getV1EmploymentsEmploymentIdOnboardingSteps = < - ThrowOnError extends boolean = false, ->( - options: Options< - GetV1EmploymentsEmploymentIdOnboardingStepsData, - ThrowOnError - >, +export const getV2OffboardingsId = ( + options: Options, ) => (options.client ?? client).get< - GetV1EmploymentsEmploymentIdOnboardingStepsResponses, - GetV1EmploymentsEmploymentIdOnboardingStepsErrors, + GetV2OffboardingsIdResponses, + GetV2OffboardingsIdErrors, ThrowOnError - >({ - security: [ - { scheme: 'bearer', type: 'http' }, - { scheme: 'bearer', type: 'http' }, - ], - url: '/v1/employments/{employment_id}/onboarding-steps', - ...options, - }); + >({ url: '/v2/offboardings/{id}', ...options }); /** - * Get employee token identity + * Report SDK errors + * + * Receives error telemetry from the frontend SDK. + * Errors are logged to observability backend for monitoring and debugging. * - * Returns user and company information for the authenticated employee. */ -export const getV1EmployeeCurrent = ( - options?: Options, +export const postV1SdkTelemetryErrors = ( + options: Options, ) => - (options?.client ?? client).get< - GetV1EmployeeCurrentResponses, - GetV1EmployeeCurrentErrors, + (options.client ?? client).post< + PostV1SdkTelemetryErrorsResponses, + PostV1SdkTelemetryErrorsErrors, ThrowOnError >({ - security: [{ scheme: 'bearer', type: 'http' }], - url: '/v1/employee/current', + url: '/v1/sdk/telemetry-errors', ...options, + headers: { + 'Content-Type': 'application/json', + ...options.headers, + }, }); /** - * List company structure nodes + * Get Company Compliance Profile * - * Shows all the company structure nodes of an employment. + * Returns the KYB and credit risk status for the company's default legal entity. * * * ## Scopes * * | Category | Read only Scope | Write only Scope (read access implicit) | * |---|---|---| - * | Manage company resources (`company_admin`) | View company structure (`company_structure:read`) | - | + * | Manage company resources (`company_admin`) | View companies (`company:read`) | Manage companies (`company:write`) | * */ -export const getV1EmploymentsEmploymentIdCompanyStructureNodes = < +export const getV1CompaniesCompanyIdComplianceProfile = < ThrowOnError extends boolean = false, >( - options: Options< - GetV1EmploymentsEmploymentIdCompanyStructureNodesData, - ThrowOnError - >, + options: Options, ) => (options.client ?? client).get< - GetV1EmploymentsEmploymentIdCompanyStructureNodesResponses, - GetV1EmploymentsEmploymentIdCompanyStructureNodesErrors, + GetV1CompaniesCompanyIdComplianceProfileResponses, + GetV1CompaniesCompanyIdComplianceProfileErrors, ThrowOnError - >({ - security: [ - { scheme: 'bearer', type: 'http' }, - { scheme: 'bearer', type: 'http' }, - ], - url: '/v1/employments/{employment_id}/company-structure-nodes', - ...options, - }); + >({ url: '/v1/companies/{company_id}/compliance-profile', ...options }); /** - * List custom field value for an employment + * Show payslip + * + * Given an ID, shows a payslip. + * + * Please contact api-support@remote.com to request access to this endpoint. * - * Returns a list of custom field values for a given employment * * ## Scopes * * | Category | Read only Scope | Write only Scope (read access implicit) | * |---|---|---| - * | Manage employments (`employments`) | View custom field values (`custom_field_value:read`) | Manage custom field values (`custom_field_value:write`) | + * | Manage employment documents (`employment_documents`) | View payslips (`payslip:read`) | - | * */ -export const getV1EmploymentsEmploymentIdCustomFields = < - ThrowOnError extends boolean = false, ->( - options: Options, +export const getV1PayslipsId = ( + options: Options, ) => (options.client ?? client).get< - GetV1EmploymentsEmploymentIdCustomFieldsResponses, - GetV1EmploymentsEmploymentIdCustomFieldsErrors, + GetV1PayslipsIdResponses, + GetV1PayslipsIdErrors, ThrowOnError - >({ - security: [ - { scheme: 'bearer', type: 'http' }, - { scheme: 'bearer', type: 'http' }, - ], - url: '/v1/employments/{employment_id}/custom-fields', - ...options, - }); + >({ url: '/v1/payslips/{id}', ...options }); /** - * Validate resignation request + * Approve a time off cancellation request + * + * Approve a time off cancellation request. + * In order to approve a time off cancellation request, the timeoff status must be `cancel_requested`. * - * Validates a resignation employment request * * ## Scopes * * | Category | Read only Scope | Write only Scope (read access implicit) | * |---|---|---| - * | Manage employments (`employments`) | - | Manage resignations (`resignation:write`) | + * | Manage timeoffs (`time_and_attendance`) | - | Manage timeoffs (`timeoff:write`) | * */ -export const putV1ResignationsOffboardingRequestIdValidate = < +export const postV1TimeoffTimeoffIdCancelRequestApprove = < ThrowOnError extends boolean = false, >( options: Options< - PutV1ResignationsOffboardingRequestIdValidateData, + PostV1TimeoffTimeoffIdCancelRequestApproveData, ThrowOnError >, ) => - (options.client ?? client).put< - PutV1ResignationsOffboardingRequestIdValidateResponses, - PutV1ResignationsOffboardingRequestIdValidateErrors, + (options.client ?? client).post< + PostV1TimeoffTimeoffIdCancelRequestApproveResponses, + PostV1TimeoffTimeoffIdCancelRequestApproveErrors, ThrowOnError - >({ - security: [ - { scheme: 'bearer', type: 'http' }, - { scheme: 'bearer', type: 'http' }, - ], - url: '/v1/resignations/{offboarding_request_id}/validate', - ...options, - headers: { - 'Content-Type': 'application/json', - ...options.headers, - }, - }); + >({ url: '/v1/timeoff/{timeoff_id}/cancel-request/approve', ...options }); /** - * Reassign default legal entity + * List Webhook Events * - * Set a different legal entity as the company's default entity. + * List all webhook events * - * The default entity is used when creating new employments without an explicit entity. - * This endpoint is only available in Sandbox, otherwise it will respond with a 404. + * ## Scopes + * + * | Category | Read only Scope | Write only Scope (read access implicit) | + * |---|---|---| + * | Manage company resources (`company_admin`) | View webhooks (`webhook:read`) | Manage webhooks (`webhook:write`) | * */ -export const putV1SandboxCompaniesCompanyIdDefaultLegalEntityLegalEntityId = < - ThrowOnError extends boolean = false, ->( - options: Options< - PutV1SandboxCompaniesCompanyIdDefaultLegalEntityLegalEntityIdData, - ThrowOnError - >, +export const getV1WebhookEvents = ( + options?: Options, ) => - (options.client ?? client).put< - PutV1SandboxCompaniesCompanyIdDefaultLegalEntityLegalEntityIdResponses, - PutV1SandboxCompaniesCompanyIdDefaultLegalEntityLegalEntityIdErrors, + (options?.client ?? client).get< + GetV1WebhookEventsResponses, + GetV1WebhookEventsErrors, ThrowOnError - >({ - security: [ - { scheme: 'bearer', type: 'http' }, - { scheme: 'bearer', type: 'http' }, - ], - url: '/v1/sandbox/companies/{company_id}/default-legal-entity/{legal_entity_id}', - ...options, - }); + >({ url: '/v1/webhook-events', ...options }); /** - * List Webhook Callbacks + * List Time Off Types + * + * Lists all time off types that can be used for the `timeoff_type` parameter. + * + * **Backward compatibility:** Calling this endpoint without the `type` query parameter returns the same response as before (time off types for full-time employments). Existing integrations do not need to change. + * + * Optionally, pass `type=contractor` to get time off types for contractor employments, or `type=full_time` for full-time employments (same as omitting the parameter). * - * List callbacks for a given company * * ## Scopes * * | Category | Read only Scope | Write only Scope (read access implicit) | * |---|---|---| - * | Manage company resources (`company_admin`) | View webhooks (`webhook:read`) | Manage webhooks (`webhook:write`) | + * | Manage timeoffs (`time_and_attendance`) | View timeoffs (`timeoff:read`) | Manage timeoffs (`timeoff:write`) | * */ -export const getV1CompaniesCompanyIdWebhookCallbacks = < - ThrowOnError extends boolean = false, ->( - options: Options, +export const getV1TimeoffTypes = ( + options: Options, ) => (options.client ?? client).get< - GetV1CompaniesCompanyIdWebhookCallbacksResponses, - GetV1CompaniesCompanyIdWebhookCallbacksErrors, + GetV1TimeoffTypesResponses, + GetV1TimeoffTypesErrors, ThrowOnError - >({ - security: [ - { scheme: 'bearer', type: 'http' }, - { scheme: 'bearer', type: 'http' }, - ], - url: '/v1/companies/{company_id}/webhook-callbacks', - ...options, - }); + >({ url: '/v1/timeoff/types', ...options }); /** - * Show contractor eligibility and COR-supported countries for legal entity + * List Company Legal Entities * - * Returns which contractor products (standard, plus, cor) the legal entity is eligible to use, - * and the list of country codes where COR is supported for this legal entity. - * COR-supported countries exclude sanctioned and signup-prevented countries and apply entity rules (same-country, local-to-local). - * When the legal entity is not COR-eligible, `cor_supported_country_codes` is an empty list. + * Lists all active legal entities for the authorized company specified in the request. * * * ## Scopes @@ -7620,126 +6615,136 @@ export const getV1CompaniesCompanyIdWebhookCallbacks = < * | Manage company resources (`company_admin`) | View companies (`company:read`) | Manage companies (`company:write`) | * */ -export const getV1CompaniesCompanyIdLegalEntitiesLegalEntityIdContractorEligibility = - ( - options: Options< - GetV1CompaniesCompanyIdLegalEntitiesLegalEntityIdContractorEligibilityData, - ThrowOnError - >, - ) => - (options.client ?? client).get< - GetV1CompaniesCompanyIdLegalEntitiesLegalEntityIdContractorEligibilityResponses, - GetV1CompaniesCompanyIdLegalEntitiesLegalEntityIdContractorEligibilityErrors, - ThrowOnError - >({ - security: [ - { scheme: 'bearer', type: 'http' }, - { scheme: 'bearer', type: 'http' }, - ], - url: '/v1/companies/{company_id}/legal-entities/{legal_entity_id}/contractor-eligibility', - ...options, - }); +export const getV1CompaniesCompanyIdLegalEntities = < + ThrowOnError extends boolean = false, +>( + options: Options, +) => + (options.client ?? client).get< + GetV1CompaniesCompanyIdLegalEntitiesResponses, + GetV1CompaniesCompanyIdLegalEntitiesErrors, + ThrowOnError + >({ url: '/v1/companies/{company_id}/legal-entities', ...options }); /** - * Show a custom field value + * Create contract eligibility + * + * Create contract eligibility for an employment. + * + * This will create a new contract eligibility for the employment. * - * Returns a custom field value for a given employment * * ## Scopes * * | Category | Read only Scope | Write only Scope (read access implicit) | * |---|---|---| - * | Manage employments (`employments`) | View custom field values (`custom_field_value:read`) | Manage custom field values (`custom_field_value:write`) | + * | Manage employment documents (`employment_documents`) | - | Manage contract eligibility (`contract_eligibility:write`) | * */ -export const getV1CustomFieldsCustomFieldIdValuesEmploymentId = < +export const postV1EmploymentsEmploymentIdContractEligibility = < ThrowOnError extends boolean = false, >( options: Options< - GetV1CustomFieldsCustomFieldIdValuesEmploymentIdData, + PostV1EmploymentsEmploymentIdContractEligibilityData, ThrowOnError >, ) => - (options.client ?? client).get< - GetV1CustomFieldsCustomFieldIdValuesEmploymentIdResponses, - GetV1CustomFieldsCustomFieldIdValuesEmploymentIdErrors, + (options.client ?? client).post< + PostV1EmploymentsEmploymentIdContractEligibilityResponses, + PostV1EmploymentsEmploymentIdContractEligibilityErrors, ThrowOnError >({ - security: [ - { scheme: 'bearer', type: 'http' }, - { scheme: 'bearer', type: 'http' }, - ], - url: '/v1/custom-fields/{custom_field_id}/values/{employment_id}', + url: '/v1/employments/{employment_id}/contract-eligibility', ...options, + headers: { + 'Content-Type': 'application/json', + ...options.headers, + }, }); /** - * Update a Custom Field Value + * List all currencies for the contractor + * + * The currencies are listed in the following order: + * 1. billing currency of the company + * 2. currencies of contractor’s existing withdrawal methods + * 3. currency of the contractor’s country + * 4. the rest, alphabetical. * - * Updates a custom field value for a given employment. * * ## Scopes * * | Category | Read only Scope | Write only Scope (read access implicit) | * |---|---|---| - * | Manage employments (`employments`) | - | Manage custom field values (`custom_field_value:write`) | + * | Manage employments (`employments`) | View employments (`employment:read`) | Manage employments (`employment:write`) | * */ -export const patchV1CustomFieldsCustomFieldIdValuesEmploymentId2 = < +export const getV1ContractorsEmploymentsEmploymentIdContractorCurrencies = < ThrowOnError extends boolean = false, >( options: Options< - PatchV1CustomFieldsCustomFieldIdValuesEmploymentId2Data, + GetV1ContractorsEmploymentsEmploymentIdContractorCurrenciesData, ThrowOnError >, ) => - (options.client ?? client).patch< - PatchV1CustomFieldsCustomFieldIdValuesEmploymentId2Responses, - PatchV1CustomFieldsCustomFieldIdValuesEmploymentId2Errors, + (options.client ?? client).get< + GetV1ContractorsEmploymentsEmploymentIdContractorCurrenciesResponses, + GetV1ContractorsEmploymentsEmploymentIdContractorCurrenciesErrors, ThrowOnError >({ - security: [ - { scheme: 'bearer', type: 'http' }, - { scheme: 'bearer', type: 'http' }, - ], - url: '/v1/custom-fields/{custom_field_id}/values/{employment_id}', + url: '/v1/contractors/employments/{employment_id}/contractor-currencies', ...options, - headers: { - 'Content-Type': 'application/json', - ...options.headers, - }, }); /** - * Update a Custom Field Value + * List payslips + * + * Lists all payslips belonging to a company. Can also filter for a single employment belonging + * to that company. * - * Updates a custom field value for a given employment. * * ## Scopes * * | Category | Read only Scope | Write only Scope (read access implicit) | * |---|---|---| - * | Manage employments (`employments`) | - | Manage custom field values (`custom_field_value:write`) | + * | Manage employment documents (`employment_documents`) | View payslips (`payslip:read`) | - | * */ -export const patchV1CustomFieldsCustomFieldIdValuesEmploymentId = < - ThrowOnError extends boolean = false, ->( - options: Options< - PatchV1CustomFieldsCustomFieldIdValuesEmploymentIdData, +export const getV1Payslips = ( + options?: Options, +) => + (options?.client ?? client).get< + GetV1PayslipsResponses, + GetV1PayslipsErrors, ThrowOnError - >, + >({ url: '/v1/payslips', ...options }); + +/** + * Create employment + * + * Creates an employment without provisional_start_date validation. + * + * This endpoint is only available in Sandbox and allows creating employments which + * `provisional_start_date` is in the past. This is especially helpful for: + * * Testing the Timeoff Balance endpoints + * * Testing the Offboarding endpoints + * * Testing features around probation periods + * + * This endpoint will respond with a 404 outside of the Sandbox environment. + * + * For creating an employment's parameters outside of testing purposes, use [this + * Employment create endpoint](#operation/post_create_employment) + * + */ +export const postV1SandboxEmployments = ( + options: Options, ) => - (options.client ?? client).put< - PatchV1CustomFieldsCustomFieldIdValuesEmploymentIdResponses, - PatchV1CustomFieldsCustomFieldIdValuesEmploymentIdErrors, + (options.client ?? client).post< + PostV1SandboxEmploymentsResponses, + PostV1SandboxEmploymentsErrors, ThrowOnError >({ - security: [ - { scheme: 'bearer', type: 'http' }, - { scheme: 'bearer', type: 'http' }, - ], - url: '/v1/custom-fields/{custom_field_id}/values/{employment_id}', + url: '/v1/sandbox/employments', ...options, headers: { 'Content-Type': 'application/json', @@ -7748,226 +6753,168 @@ export const patchV1CustomFieldsCustomFieldIdValuesEmploymentId = < }); /** - * Show a contractor of record (COR) termination request + * Show employee emergency contact + * + * Returns the authenticated employee's emergency contact. + * + * The employment is derived from the access token's subject — there is no + * employment id in the path. + * + * This endpoint requires country-specific data. The exact required fields vary depending on which + * country the authenticated employee's employment is in. Query the + * [Show form schema](#tag/Countries/operation/get_show_form_country) endpoint with `emergency_contact_details` + * as the form name to discover the schema for a given country. * - * Retrieves a Contractor of Record termination request by ID. * * * ## Scopes * * | Category | Read only Scope | Write only Scope (read access implicit) | * |---|---|---| - * | Manage employments (`employments`) | View employments (`employment:read`) | Manage employments (`employment:write`) | + * | Manage employments (`employments`) | View emergency contacts (`emergency_contact:read`) | Manage emergency contacts (`emergency_contact:write`) | * */ -export const getV1ContractorsEmploymentsEmploymentIdCorTerminationRequestsTerminationRequestId = - ( - options: Options< - GetV1ContractorsEmploymentsEmploymentIdCorTerminationRequestsTerminationRequestIdData, - ThrowOnError - >, - ) => - (options.client ?? client).get< - GetV1ContractorsEmploymentsEmploymentIdCorTerminationRequestsTerminationRequestIdResponses, - GetV1ContractorsEmploymentsEmploymentIdCorTerminationRequestsTerminationRequestIdErrors, - ThrowOnError - >({ - security: [ - { scheme: 'bearer', type: 'http' }, - { scheme: 'bearer', type: 'http' }, - ], - url: '/v1/contractors/employments/{employment_id}/cor-termination-requests/{termination_request_id}', - ...options, - }); +export const getV1EmployeeEmergencyContact = < + ThrowOnError extends boolean = false, +>( + options?: Options, +) => + (options?.client ?? client).get< + GetV1EmployeeEmergencyContactResponses, + GetV1EmployeeEmergencyContactErrors, + ThrowOnError + >({ url: '/v1/employee/emergency-contact', ...options }); /** - * Terminate contractor of record employment + * Update employee emergency contact * - * **Deprecated.** Use `POST /contractors/employments/{employment_id}/cor-termination-requests` instead. + * Updates the authenticated employee's emergency contact. + * + * The employment is derived from the access token's subject — there is no + * employment id in the path. The token must be an employee-role token + * (typically obtained via the OAuth2 assertion grant with subject + * `urn:remote-api:employee:employment:`). + * + * This endpoint requires country-specific data. The exact required fields vary depending on which + * country the authenticated employee's employment is in. Query the + * [Show form schema](#tag/Countries/operation/get_show_form_country) endpoint with `emergency_contact_details` + * as the form name to discover the schema for a given country. * - * Initiates a termination request for a Contractor of Record employment. - * When a termination request is sent, a stop work order is issued and the contractor remains active until a final invoice is paid or waived. - * Currently, only Contractor of Record employments can be terminated. * * * ## Scopes * * | Category | Read only Scope | Write only Scope (read access implicit) | * |---|---|---| - * | Manage employments (`employments`) | - | Manage employments (`employment:write`) | - * + * | Manage employments (`employments`) | - | Manage emergency contacts (`emergency_contact:write`) | * - * @deprecated */ -export const postV1ContractorsEmploymentsEmploymentIdTerminateCorEmployment = < +export const putV1EmployeeEmergencyContact = < ThrowOnError extends boolean = false, >( - options: Options< - PostV1ContractorsEmploymentsEmploymentIdTerminateCorEmploymentData, - ThrowOnError - >, + options?: Options, ) => - (options.client ?? client).post< - PostV1ContractorsEmploymentsEmploymentIdTerminateCorEmploymentResponses, - PostV1ContractorsEmploymentsEmploymentIdTerminateCorEmploymentErrors, + (options?.client ?? client).put< + PutV1EmployeeEmergencyContactResponses, + PutV1EmployeeEmergencyContactErrors, ThrowOnError >({ - security: [ - { scheme: 'bearer', type: 'http' }, - { scheme: 'bearer', type: 'http' }, - ], - url: '/v1/contractors/employments/{employment_id}/terminate-cor-employment', + url: '/v1/employee/emergency-contact', ...options, + headers: { + 'Content-Type': 'application/json', + ...options?.headers, + }, }); /** - * Sign a document for a contractor + * Show Company Payroll Runs + * + * Given an ID, shows a payroll run. + * `employee_details` field is deprecated in favour of the `employee_details` endpoint and will be removed in the future. + * * * ## Scopes * * | Category | Read only Scope | Write only Scope (read access implicit) | * |---|---|---| - * | Manage employment documents (`employment_documents`) | - | Manage documents (`document:write`) | - * - */ -export const postV1ContractorsEmploymentsEmploymentIdContractDocumentsContractDocumentIdSign = - ( - options: Options< - PostV1ContractorsEmploymentsEmploymentIdContractDocumentsContractDocumentIdSignData, - ThrowOnError - >, - ) => - (options.client ?? client).post< - PostV1ContractorsEmploymentsEmploymentIdContractDocumentsContractDocumentIdSignResponses, - PostV1ContractorsEmploymentsEmploymentIdContractDocumentsContractDocumentIdSignErrors, - ThrowOnError - >({ - security: [ - { scheme: 'bearer', type: 'http' }, - { scheme: 'bearer', type: 'http' }, - ], - url: '/v1/contractors/employments/{employment_id}/contract-documents/{contract_document_id}/sign', - ...options, - headers: { - 'Content-Type': 'application/json', - ...options.headers, - }, - }); - -/** - * Get token identity - * - * Shows information about the entities that can be controlled by the current auth token. + * | Manage payroll runs (`payroll`) | View payroll runs (`payroll_run:read`) | - | * */ -export const getV1IdentityCurrent = ( - options: Options, +export const getV1PayrollRunsPayrollRunId = < + ThrowOnError extends boolean = false, +>( + options: Options, ) => (options.client ?? client).get< - GetV1IdentityCurrentResponses, - GetV1IdentityCurrentErrors, + GetV1PayrollRunsPayrollRunIdResponses, + GetV1PayrollRunsPayrollRunIdErrors, ThrowOnError - >({ - security: [ - { scheme: 'bearer', type: 'http' }, - { scheme: 'bearer', type: 'http' }, - { scheme: 'bearer', type: 'http' }, - ], - url: '/v1/identity/current', - ...options, - }); + >({ url: '/v1/payroll-runs/{payroll_run_id}', ...options }); /** - * Delete an Incentive - * - * Delete an incentive. - * - * `one_time` incentives that have the following status **CANNOT** be deleted: - * * `processing` - * * `paid` + * Show Offboarding * + * Shows an Offboarding request. * * ## Scopes * * | Category | Read only Scope | Write only Scope (read access implicit) | * |---|---|---| - * | Manage expenses (`employment_payments`) | - | Manage incentives (`incentive:write`) | + * | Manage employments (`employments`) | View offboarding requests (`offboarding:read`) | Manage offboarding (`offboarding:write`) | * */ -export const deleteV1IncentivesId = ( - options: Options, +export const getV1OffboardingsId = ( + options: Options, ) => - (options.client ?? client).delete< - DeleteV1IncentivesIdResponses, - DeleteV1IncentivesIdErrors, + (options.client ?? client).get< + GetV1OffboardingsIdResponses, + GetV1OffboardingsIdErrors, ThrowOnError - >({ - security: [ - { scheme: 'bearer', type: 'http' }, - { scheme: 'bearer', type: 'http' }, - ], - url: '/v1/incentives/{id}', - ...options, - }); + >({ url: '/v1/offboardings/{id}', ...options }); /** - * Show Incentive + * List expenses * - * Show an Incentive's details + * Lists all expenses records * * ## Scopes * * | Category | Read only Scope | Write only Scope (read access implicit) | * |---|---|---| - * | Manage expenses (`employment_payments`) | View incentives (`incentive:read`) | Manage incentives (`incentive:write`) | + * | Manage expenses (`employment_payments`) | View expenses (`expense:read`) | Manage expenses (`expense:write`) | * */ -export const getV1IncentivesId = ( - options: Options, +export const getV1Expenses = ( + options: Options, ) => (options.client ?? client).get< - GetV1IncentivesIdResponses, - GetV1IncentivesIdErrors, + GetV1ExpensesResponses, + GetV1ExpensesErrors, ThrowOnError - >({ - security: [ - { scheme: 'bearer', type: 'http' }, - { scheme: 'bearer', type: 'http' }, - ], - url: '/v1/incentives/{id}', - ...options, - }); + >({ url: '/v1/expenses', ...options }); /** - * Update Incentive - * - * Updates an Incentive. - * - * Incentives use the currency of the employment specified provided in the `employment_id` field. - * - * The API doesn't support updating paid incentives. + * Create expense * + * Creates an **approved** expense * * ## Scopes * * | Category | Read only Scope | Write only Scope (read access implicit) | * |---|---|---| - * | Manage expenses (`employment_payments`) | - | Manage incentives (`incentive:write`) | + * | Manage expenses (`employment_payments`) | - | Manage expenses (`expense:write`) | * */ -export const patchV1IncentivesId2 = ( - options: Options, +export const postV1Expenses = ( + options: Options, ) => - (options.client ?? client).patch< - PatchV1IncentivesId2Responses, - PatchV1IncentivesId2Errors, + (options.client ?? client).post< + PostV1ExpensesResponses, + PostV1ExpensesErrors, ThrowOnError >({ - security: [ - { scheme: 'bearer', type: 'http' }, - { scheme: 'bearer', type: 'http' }, - ], - url: '/v1/incentives/{id}', + url: '/v1/expenses', ...options, headers: { 'Content-Type': 'application/json', @@ -7976,35 +6923,85 @@ export const patchV1IncentivesId2 = ( }); /** - * Update Incentive + * List payslip files for the authenticated employee * - * Updates an Incentive. + * Returns a paginated list of payslip files belonging to the current employee. * - * Incentives use the currency of the employment specified provided in the `employment_id` field. + * ## Scopes * - * The API doesn't support updating paid incentives. + * | Category | Read only Scope | Write only Scope (read access implicit) | + * |---|---|---| + * | Manage employment documents (`employment_documents`) | View payslips (`payslip:read`) | - | + * + */ +export const getV1EmployeePayslipFiles = ( + options?: Options, +) => + (options?.client ?? client).get< + GetV1EmployeePayslipFilesResponses, + GetV1EmployeePayslipFilesErrors, + ThrowOnError + >({ url: '/v1/employee/payslip-files', ...options }); + +/** + * Invite employment + * + * Invite an employment to start the self-enrollment. + * + * Requirements for the invitation to succeed: + * + * * Employment needs to have the following JSON Schema forms filled: `contract_details` and `pricing_plan_details` + * * `provisional_start_date` must consider the minimum onboarding time of the employment's country + * + * If there are validations errors, they are returned with a Conflict HTTP Status (409) and a descriptive message. + * HTTP Status OK (200) is returned in case of success. + * + * In case of the following error message: + * `"Please reselect benefits - the previous selection is no longer available"` + * it means that the benefit options have been updated and the employment's benefits are no longer compliant with the new schema. + * + * In this case, reselect benefits by updating `contract_details` JSON Schema form. + * + * + * ## Scopes + * + * | Category | Read only Scope | Write only Scope (read access implicit) | + * |---|---|---| + * | Manage employments (`employments`) | - | Manage employments (`employment:write`) | + * + */ +export const postV1EmploymentsEmploymentIdInvite = < + ThrowOnError extends boolean = false, +>( + options: Options, +) => + (options.client ?? client).post< + PostV1EmploymentsEmploymentIdInviteResponses, + PostV1EmploymentsEmploymentIdInviteErrors, + ThrowOnError + >({ url: '/v1/employments/{employment_id}/invite', ...options }); + +/** + * Create Probation Extension * + * Create a probation extension request. * * ## Scopes * * | Category | Read only Scope | Write only Scope (read access implicit) | * |---|---|---| - * | Manage expenses (`employment_payments`) | - | Manage incentives (`incentive:write`) | + * | Manage employment documents (`employment_documents`) | - | Manage probation documents (`probation_document:write`) | * */ -export const patchV1IncentivesId = ( - options: Options, +export const postV1ProbationExtensions = ( + options: Options, ) => - (options.client ?? client).put< - PatchV1IncentivesIdResponses, - PatchV1IncentivesIdErrors, + (options.client ?? client).post< + PostV1ProbationExtensionsResponses, + PostV1ProbationExtensionsErrors, ThrowOnError >({ - security: [ - { scheme: 'bearer', type: 'http' }, - { scheme: 'bearer', type: 'http' }, - ], - url: '/v1/incentives/{id}', + url: '/v1/probation-extensions', ...options, headers: { 'Content-Type': 'application/json', @@ -8013,12 +7010,10 @@ export const patchV1IncentivesId = ( }); /** - * Get eligibility questionnaire schema - * - * Returns the JSON schema for the eligibility questionnaire by type. + * List contractor of record (COR) termination requests * - * The schema defines the structure and validation rules for the questionnaire responses. - * Supports versioning to allow for schema evolution while maintaining backwards compatibility. + * Lists Contractor of Record termination requests for your company, + * optionally filtered by employment and status. * * * ## Scopes @@ -8028,59 +7023,51 @@ export const patchV1IncentivesId = ( * | Manage employments (`employments`) | View employments (`employment:read`) | Manage employments (`employment:write`) | * */ -export const getV1ContractorsSchemasEligibilityQuestionnaire = < +export const getV1ContractorsCorTerminationRequests = < ThrowOnError extends boolean = false, >( - options: Options< - GetV1ContractorsSchemasEligibilityQuestionnaireData, - ThrowOnError - >, + options?: Options, ) => - (options.client ?? client).get< - GetV1ContractorsSchemasEligibilityQuestionnaireResponses, - GetV1ContractorsSchemasEligibilityQuestionnaireErrors, + (options?.client ?? client).get< + GetV1ContractorsCorTerminationRequestsResponses, + GetV1ContractorsCorTerminationRequestsErrors, ThrowOnError - >({ - security: [ - { scheme: 'bearer', type: 'http' }, - { scheme: 'bearer', type: 'http' }, - ], - url: '/v1/contractors/schemas/eligibility-questionnaire', - ...options, - }); + >({ url: '/v1/contractors/cor-termination-requests', ...options }); /** - * List work authorization requests - * - * List work authorization requests. + * Approve Contract Amendment * - * ## Scopes + * Approves a contract amendment request without the intervention of a Remote admin. + * Approvals done via this endpoint are effective immediately, + * regardless of the effective date entered on the contract amendment creation. * - * | Category | Read only Scope | Write only Scope (read access implicit) | - * |---|---|---| - * | Manage employments (`employments`) | View work authorizations (`work_authorization:read`) | Manage work authorizations (`work_authorization:write`) | + * This endpoint is only available in Sandbox, otherwise it will respond with a 404. * */ -export const getV1WorkAuthorizationRequests = < +export const putV1SandboxContractAmendmentsContractAmendmentRequestIdApprove = < ThrowOnError extends boolean = false, >( - options?: Options, + options: Options< + PutV1SandboxContractAmendmentsContractAmendmentRequestIdApproveData, + ThrowOnError + >, ) => - (options?.client ?? client).get< - GetV1WorkAuthorizationRequestsResponses, - GetV1WorkAuthorizationRequestsErrors, + (options.client ?? client).put< + PutV1SandboxContractAmendmentsContractAmendmentRequestIdApproveResponses, + PutV1SandboxContractAmendmentsContractAmendmentRequestIdApproveErrors, ThrowOnError >({ - security: [ - { scheme: 'bearer', type: 'http' }, - { scheme: 'bearer', type: 'http' }, - ], - url: '/v1/work-authorization-requests', + url: '/v1/sandbox/contract-amendments/{contract_amendment_request_id}/approve', ...options, }); /** - * Show bulk employment job + * Get Onboarding Reserves Status for Employment + * + * Returns the onboarding reserves status for a specific employment. + * + * The status is the same as the credit risk status but takes the onboarding reserves policies into account. + * * * ## Scopes * @@ -8089,232 +7076,177 @@ export const getV1WorkAuthorizationRequests = < * | Manage employments (`employments`) | View employments (`employment:read`) | Manage employments (`employment:write`) | * */ -export const getV1BulkEmploymentJobsJobId = < - ThrowOnError extends boolean = false, ->( - options: Options, -) => - (options.client ?? client).get< - GetV1BulkEmploymentJobsJobIdResponses, - GetV1BulkEmploymentJobsJobIdErrors, - ThrowOnError - >({ - security: [ - { scheme: 'bearer', type: 'http' }, - { scheme: 'bearer', type: 'http' }, - ], - url: '/v1/bulk-employment-jobs/{job_id}', - ...options, - }); +export const getV1CompaniesCompanyIdEmploymentsEmploymentIdOnboardingReservesStatus = + ( + options: Options< + GetV1CompaniesCompanyIdEmploymentsEmploymentIdOnboardingReservesStatusData, + ThrowOnError + >, + ) => + (options.client ?? client).get< + GetV1CompaniesCompanyIdEmploymentsEmploymentIdOnboardingReservesStatusResponses, + GetV1CompaniesCompanyIdEmploymentsEmploymentIdOnboardingReservesStatusErrors, + ThrowOnError + >({ + url: '/v1/companies/{company_id}/employments/{employment_id}/onboarding-reserves-status', + ...options, + }); /** - * List Pay Items + * Show Contractor Invoice * - * Lists pay items for a company with optional filtering by employment, date range, and pagination. + * Shows a single Contractor Invoice record. * * ## Scopes * * | Category | Read only Scope | Write only Scope (read access implicit) | * |---|---|---| - * | Manage payroll runs (`payroll`) | View pay items (`pay_item:read`) | Manage pay items (`pay_item:write`) | + * | Manage invoices (`invoices`) | View invoices (`invoices:read`) | Manage invoices (`invoices:write`) | * */ -export const getV1PayItems = ( - options?: Options, +export const getV1ContractorInvoicesId = ( + options: Options, +) => + (options.client ?? client).get< + GetV1ContractorInvoicesIdResponses, + GetV1ContractorInvoicesIdErrors, + ThrowOnError + >({ url: '/v1/contractor-invoices/{id}', ...options }); + +/** + * Payroll Feature API resource + * + * API to retrieve feature properties from the vendor system + */ +export const getV1WdGphPayProcessingFeature = < + ThrowOnError extends boolean = false, +>( + options?: Options, ) => (options?.client ?? client).get< - GetV1PayItemsResponses, - GetV1PayItemsErrors, + GetV1WdGphPayProcessingFeatureResponses, + GetV1WdGphPayProcessingFeatureErrors, ThrowOnError >({ - security: [ - { scheme: 'bearer', type: 'http' }, - { scheme: 'bearer', type: 'http' }, - ], - url: '/v1/pay-items', + security: [{ scheme: 'bearer', type: 'http' }], + url: '/v1/wd/gph/payProcessingFeature', ...options, }); /** - * List Benefit Offers - * - * List benefit offers for each country. - * - * - * ## Scopes - * - * | Category | Read only Scope | Write only Scope (read access implicit) | - * |---|---|---| - * | Manage company resources (`company_admin`) | View benefit offers (`benefit_offer:read`) | Manage benefit offers (`benefit_offer:write`) | + * Payroll processing progress API resource * + * API to retrieve the processing stages of a pay group */ -export const getV1BenefitOffersCountrySummaries = < - ThrowOnError extends boolean = false, ->( - options: Options, +export const getV1WdGphPayProgress = ( + options: Options, ) => (options.client ?? client).get< - GetV1BenefitOffersCountrySummariesResponses, - GetV1BenefitOffersCountrySummariesErrors, + GetV1WdGphPayProgressResponses, + GetV1WdGphPayProgressErrors, ThrowOnError >({ - security: [ - { scheme: 'bearer', type: 'http' }, - { scheme: 'bearer', type: 'http' }, - ], - url: '/v1/benefit-offers/country-summaries', + security: [{ scheme: 'bearer', type: 'http' }], + url: '/v1/wd/gph/payProgress', ...options, }); /** - * List Benefit Offers By Employment - * - * List benefit offers by employment. + * List company supported currencies * + * List company supported currencies * * ## Scopes * * | Category | Read only Scope | Write only Scope (read access implicit) | * |---|---|---| - * | Manage company resources (`company_admin`) | View benefit offers (`benefit_offer:read`) | Manage benefit offers (`benefit_offer:write`) | + * | Manage company resources (`company_admin`) | View company currencies (`company_currencies:read`) | - | * */ -export const getV1BenefitOffers = ( - options: Options, +export const getV1CompanyCurrencies = ( + options?: Options, ) => - (options.client ?? client).get< - GetV1BenefitOffersResponses, - GetV1BenefitOffersErrors, + (options?.client ?? client).get< + GetV1CompanyCurrenciesResponses, + GetV1CompanyCurrenciesErrors, ThrowOnError - >({ - security: [ - { scheme: 'bearer', type: 'http' }, - { scheme: 'bearer', type: 'http' }, - ], - url: '/v1/benefit-offers', - ...options, - }); + >({ url: '/v1/company-currencies', ...options }); /** - * Cancel Contract Amendment + * Get a employment benefit offers JSON schema * - * Use this endpoint to cancel an existing contract amendment request. + * ## Scopes * - * This endpoint is only available in Sandbox, otherwise it will respond with a 404. + * | Category | Read only Scope | Write only Scope (read access implicit) | + * |---|---|---| + * | Manage company resources (`company_admin`) | View benefit offers (`benefit_offer:read`) | Manage benefit offers (`benefit_offer:write`) | * */ -export const putV1SandboxContractAmendmentsContractAmendmentRequestIdCancel = < +export const getV1EmploymentsEmploymentIdBenefitOffersSchema = < ThrowOnError extends boolean = false, >( options: Options< - PutV1SandboxContractAmendmentsContractAmendmentRequestIdCancelData, + GetV1EmploymentsEmploymentIdBenefitOffersSchemaData, ThrowOnError >, ) => - (options.client ?? client).put< - PutV1SandboxContractAmendmentsContractAmendmentRequestIdCancelResponses, - PutV1SandboxContractAmendmentsContractAmendmentRequestIdCancelErrors, + (options.client ?? client).get< + GetV1EmploymentsEmploymentIdBenefitOffersSchemaResponses, + GetV1EmploymentsEmploymentIdBenefitOffersSchemaErrors, ThrowOnError >({ - security: [ - { scheme: 'bearer', type: 'http' }, - { scheme: 'bearer', type: 'http' }, - ], - url: '/v1/sandbox/contract-amendments/{contract_amendment_request_id}/cancel', + url: '/v1/employments/{employment_id}/benefit-offers/schema', ...options, }); /** - * List employee time offs + * List Contractor Invoice Schedules * - * Lists the current employee's time off records + * Lists Contractor Invoice Schedule records. * * ## Scopes * * | Category | Read only Scope | Write only Scope (read access implicit) | * |---|---|---| - * | Manage timeoffs (`time_and_attendance`) | View timeoffs (`timeoff:read`) | Manage timeoffs (`timeoff:write`) | + * | Manage invoices (`invoices`) | - | Manage invoices (`invoices:write`) | * */ -export const getV1EmployeeTimeoff = ( - options?: Options, +export const getV1ContractorInvoiceSchedules = < + ThrowOnError extends boolean = false, +>( + options?: Options, ) => (options?.client ?? client).get< - GetV1EmployeeTimeoffResponses, - GetV1EmployeeTimeoffErrors, + GetV1ContractorInvoiceSchedulesResponses, + GetV1ContractorInvoiceSchedulesErrors, ThrowOnError - >({ - security: [{ scheme: 'bearer', type: 'http' }], - url: '/v1/employee/timeoff', - ...options, - }); + >({ url: '/v1/contractor-invoice-schedules', ...options }); /** - * Create a Pending Time Off + * Create Contractor Invoice Schedules + * + * Creates many invoice schedules records. + * It's supposed to return two lists: one containing created records, and another one containing the schedules that failed to be inserted. * - * Creates a pending Time Off record * * ## Scopes * * | Category | Read only Scope | Write only Scope (read access implicit) | * |---|---|---| - * | Manage timeoffs (`time_and_attendance`) | - | Manage timeoffs (`timeoff:write`) | + * | Manage invoices (`invoices`) | - | Manage invoices (`invoices:write`) | * */ -export const postV1EmployeeTimeoff = ( - options: Options, -) => - (options.client ?? client).post< - PostV1EmployeeTimeoffResponses, - PostV1EmployeeTimeoffErrors, - ThrowOnError - >({ - security: [{ scheme: 'bearer', type: 'http' }], - url: '/v1/employee/timeoff', - ...options, - headers: { - 'Content-Type': 'application/json', - ...options.headers, - }, - }); - -/** - * Update employment - */ -export const patchV2EmploymentsEmploymentId2 = < - ThrowOnError extends boolean = false, ->( - options: Options, -) => - (options.client ?? client).patch< - PatchV2EmploymentsEmploymentId2Responses, - PatchV2EmploymentsEmploymentId2Errors, - ThrowOnError - >({ - security: [{ scheme: 'bearer', type: 'http' }], - url: '/v2/employments/{employment_id}', - ...options, - headers: { - 'Content-Type': 'application/json', - ...options.headers, - }, - }); - -/** - * Update employment - */ -export const patchV2EmploymentsEmploymentId = < +export const postV1ContractorInvoiceSchedules = < ThrowOnError extends boolean = false, >( - options: Options, + options: Options, ) => - (options.client ?? client).put< - PatchV2EmploymentsEmploymentIdResponses, - PatchV2EmploymentsEmploymentIdErrors, + (options.client ?? client).post< + PostV1ContractorInvoiceSchedulesResponses, + PostV1ContractorInvoiceSchedulesErrors, ThrowOnError >({ - security: [{ scheme: 'bearer', type: 'http' }], - url: '/v2/employments/{employment_id}', + url: '/v1/contractor-invoice-schedules', ...options, headers: { 'Content-Type': 'application/json', @@ -8323,53 +7255,51 @@ export const patchV2EmploymentsEmploymentId = < }); /** - * Update personal details - * - * Updates employment's personal details. - * - * This endpoint requires and returns country-specific data. The exact required and returned fields will - * vary depending on which country the employment is in. To see the list of parameters for each country, - * see the **Show form schema** endpoint under the [Countries](#tag/Countries) category. - * - * Please note that the compliance requirements for each country are subject to change according to local - * laws. Given its continual updates, using Remote's [json-schema-form](https://developer.remote.com/docs/how-json-schemas-work) should be considered in order to avoid - * compliance issues and to have the latest version of a country requirements. + * Show work authorization request * - * If you are using this endpoint to build an integration, make sure you are dynamically collecting or - * displaying the latest parameters for each country by querying the _"Show form schema"_ endpoint. + * Show a single work authorization request. * - * For more information on JSON Schemas, see the **How JSON Schemas work** documentation. + * ## Scopes * - * To learn how you can dynamically generate forms to display in your UI, see the documentation for - * the [json-schema-form](https://developer.remote.com/docs/how-json-schemas-form) tool. + * | Category | Read only Scope | Write only Scope (read access implicit) | + * |---|---|---| + * | Manage employments (`employments`) | View work authorizations (`work_authorization:read`) | Manage work authorizations (`work_authorization:write`) | * + */ +export const getV1WorkAuthorizationRequestsId = < + ThrowOnError extends boolean = false, +>( + options: Options, +) => + (options.client ?? client).get< + GetV1WorkAuthorizationRequestsIdResponses, + GetV1WorkAuthorizationRequestsIdErrors, + ThrowOnError + >({ url: '/v1/work-authorization-requests/{id}', ...options }); + +/** + * Update work authorization request * + * Updates a work authorization request. * * ## Scopes * * | Category | Read only Scope | Write only Scope (read access implicit) | * |---|---|---| - * | Manage employments (`employments`) | - | Manage employments (`employment:write`) | + * | Manage employments (`employments`) | - | Manage work authorizations (`work_authorization:write`) | * */ -export const putV2EmploymentsEmploymentIdPersonalDetails = < +export const patchV1WorkAuthorizationRequestsId2 = < ThrowOnError extends boolean = false, >( - options: Options< - PutV2EmploymentsEmploymentIdPersonalDetailsData, - ThrowOnError - >, + options: Options, ) => - (options.client ?? client).put< - PutV2EmploymentsEmploymentIdPersonalDetailsResponses, - PutV2EmploymentsEmploymentIdPersonalDetailsErrors, + (options.client ?? client).patch< + PatchV1WorkAuthorizationRequestsId2Responses, + PatchV1WorkAuthorizationRequestsId2Errors, ThrowOnError >({ - security: [ - { scheme: 'bearer', type: 'http' }, - { scheme: 'bearer', type: 'http' }, - ], - url: '/v2/employments/{employment_id}/personal-details', + url: '/v1/work-authorization-requests/{id}', ...options, headers: { 'Content-Type': 'application/json', @@ -8378,95 +7308,94 @@ export const putV2EmploymentsEmploymentIdPersonalDetails = < }); /** - * Show Probation Extension - * - * Shows a Probation Extension Request. + * Update work authorization request * + * Updates a work authorization request. * * ## Scopes * * | Category | Read only Scope | Write only Scope (read access implicit) | * |---|---|---| - * | Manage employment documents (`employment_documents`) | View probation documents (`probation_document:read`) | Manage probation documents (`probation_document:write`) | + * | Manage employments (`employments`) | - | Manage work authorizations (`work_authorization:write`) | * */ -export const getV1ProbationExtensionsId = < +export const patchV1WorkAuthorizationRequestsId = < ThrowOnError extends boolean = false, >( - options: Options, + options: Options, ) => - (options.client ?? client).get< - GetV1ProbationExtensionsIdResponses, - GetV1ProbationExtensionsIdErrors, + (options.client ?? client).put< + PatchV1WorkAuthorizationRequestsIdResponses, + PatchV1WorkAuthorizationRequestsIdErrors, ThrowOnError >({ - security: [ - { scheme: 'bearer', type: 'http' }, - { scheme: 'bearer', type: 'http' }, - ], - url: '/v1/probation-extensions/{id}', + url: '/v1/work-authorization-requests/{id}', ...options, + headers: { + 'Content-Type': 'application/json', + ...options.headers, + }, }); /** - * List payslips - * - * Lists all payslips belonging to a company. Can also filter for a single employment belonging - * to that company. + * Decline Time Off * + * Decline a time off request. Please note that only time off requests on the `requested` status can be declined. * * ## Scopes * * | Category | Read only Scope | Write only Scope (read access implicit) | * |---|---|---| - * | Manage employment documents (`employment_documents`) | View payslips (`payslip:read`) | - | + * | Manage timeoffs (`time_and_attendance`) | - | Manage timeoffs (`timeoff:write`) | * */ -export const getV1Payslips = ( - options?: Options, +export const postV1TimeoffTimeoffIdDecline = < + ThrowOnError extends boolean = false, +>( + options: Options, ) => - (options?.client ?? client).get< - GetV1PayslipsResponses, - GetV1PayslipsErrors, + (options.client ?? client).post< + PostV1TimeoffTimeoffIdDeclineResponses, + PostV1TimeoffTimeoffIdDeclineErrors, ThrowOnError >({ - security: [ - { scheme: 'bearer', type: 'http' }, - { scheme: 'bearer', type: 'http' }, - ], - url: '/v1/payslips', + url: '/v1/timeoff/{timeoff_id}/decline', ...options, + headers: { + 'Content-Type': 'application/json', + ...options.headers, + }, }); /** - * Download a receipt by id + * Get eligibility questionnaire schema + * + * Returns the JSON schema for the eligibility questionnaire by type. + * + * The schema defines the structure and validation rules for the questionnaire responses. + * Supports versioning to allow for schema evolution while maintaining backwards compatibility. * - * Download a receipt by id. * * ## Scopes * * | Category | Read only Scope | Write only Scope (read access implicit) | * |---|---|---| - * | Manage expenses (`employment_payments`) | View expenses (`expense:read`) | Manage expenses (`expense:write`) | + * | Manage employments (`employments`) | View employments (`employment:read`) | Manage employments (`employment:write`) | * */ -export const getV1ExpensesExpenseIdReceiptsReceiptId = < +export const getV1ContractorsSchemasEligibilityQuestionnaire = < ThrowOnError extends boolean = false, >( - options: Options, + options: Options< + GetV1ContractorsSchemasEligibilityQuestionnaireData, + ThrowOnError + >, ) => (options.client ?? client).get< - GetV1ExpensesExpenseIdReceiptsReceiptIdResponses, - GetV1ExpensesExpenseIdReceiptsReceiptIdErrors, + GetV1ContractorsSchemasEligibilityQuestionnaireResponses, + GetV1ContractorsSchemasEligibilityQuestionnaireErrors, ThrowOnError - >({ - security: [ - { scheme: 'bearer', type: 'http' }, - { scheme: 'bearer', type: 'http' }, - ], - url: '/v1/expenses/{expense_id}/receipts/{receipt_id}', - ...options, - }); + >({ url: '/v1/contractors/schemas/eligibility-questionnaire', ...options }); /** * Token @@ -8481,8 +7410,7 @@ export const postAuthOauth2Token = ( PostAuthOauth2TokenErrors, ThrowOnError >({ - security: [{ scheme: 'basic', type: 'http' }], - url: '/auth/oauth2/token', + url: '/oauth2/token', ...options, headers: { 'Content-Type': 'application/json', @@ -8491,53 +7419,42 @@ export const postAuthOauth2Token = ( }); /** - * Show legal entity administrative details form schema - * - * Returns the json schema of a supported form. Possible form names are: - * ``` - * - administrative_details - * ``` - * - * Most forms require a company access token, as they are dependent on certain - * properties of companies and their current employments. + * Delete contractor of record subscription intent * + * Deletes Contractor of Record subscription intent. * * * ## Scopes * * | Category | Read only Scope | Write only Scope (read access implicit) | * |---|---|---| - * | Manage company resources (`company_admin`) | View forms (`form:read`) | - | + * | Manage employments (`employments`) | - | Manage employments (`employment:write`) | * */ -export const getV1CountriesCountryCodeLegalEntityFormsForm = < - ThrowOnError extends boolean = false, ->( - options: Options< - GetV1CountriesCountryCodeLegalEntityFormsFormData, - ThrowOnError - >, -) => - (options.client ?? client).get< - GetV1CountriesCountryCodeLegalEntityFormsFormResponses, - GetV1CountriesCountryCodeLegalEntityFormsFormErrors, - ThrowOnError - >({ - security: [ - { scheme: 'bearer', type: 'http' }, - { scheme: 'bearer', type: 'http' }, - { scheme: 'bearer', type: 'http' }, - ], - url: '/v1/countries/{country_code}/legal_entity_forms/{form}', - ...options, - }); +export const deleteV1ContractorsEmploymentsEmploymentIdContractorCorSubscription = + ( + options: Options< + DeleteV1ContractorsEmploymentsEmploymentIdContractorCorSubscriptionData, + ThrowOnError + >, + ) => + (options.client ?? client).delete< + DeleteV1ContractorsEmploymentsEmploymentIdContractorCorSubscriptionResponses, + DeleteV1ContractorsEmploymentsEmploymentIdContractorCorSubscriptionErrors, + ThrowOnError + >({ + url: '/v1/contractors/employments/{employment_id}/contractor-cor-subscription', + ...options, + }); /** - * Manage contractor plus subscription + * Create contractor of record subscription intent * - * Endpoint that can be used to upgrade, assign or downgrade a contractor's subscription. - * This can be used when company admins desire to assign someone to the Contractor Plus plan, - * but also to change the contractor's subscription between Plus and Standard. + * Assigns Contractor of Record subscription in pending state to employment. + * Once risk analysis is performed, subscription may start upon contract signing, + * or might be denied. + * + * Requires a non-blocking eligibility questionnaire to be submitted before creating the subscription intent. * * * ## Scopes @@ -8547,351 +7464,338 @@ export const getV1CountriesCountryCodeLegalEntityFormsForm = < * | Manage employments (`employments`) | - | Manage employments (`employment:write`) | * */ -export const postV1ContractorsEmploymentsEmploymentIdContractorPlusSubscription = +export const postV1ContractorsEmploymentsEmploymentIdContractorCorSubscription = ( options: Options< - PostV1ContractorsEmploymentsEmploymentIdContractorPlusSubscriptionData, + PostV1ContractorsEmploymentsEmploymentIdContractorCorSubscriptionData, ThrowOnError >, ) => (options.client ?? client).post< - PostV1ContractorsEmploymentsEmploymentIdContractorPlusSubscriptionResponses, - PostV1ContractorsEmploymentsEmploymentIdContractorPlusSubscriptionErrors, + PostV1ContractorsEmploymentsEmploymentIdContractorCorSubscriptionResponses, + PostV1ContractorsEmploymentsEmploymentIdContractorCorSubscriptionErrors, ThrowOnError >({ - security: [ - { scheme: 'bearer', type: 'http' }, - { scheme: 'bearer', type: 'http' }, - ], - url: '/v1/contractors/employments/{employment_id}/contractor-plus-subscription', + url: '/v1/contractors/employments/{employment_id}/contractor-cor-subscription', ...options, - headers: { - 'Content-Type': 'application/json', - ...options.headers, - }, }); /** - * List Time Off + * Update personal details + * + * Updates employment's personal details. + * + * This endpoint requires and returns country-specific data. The exact required and returned fields will + * vary depending on which country the employment is in. To see the list of parameters for each country, + * see the **Show form schema** endpoint under the [Countries](#tag/Countries) category. + * + * Please note that the compliance requirements for each country are subject to change according to local + * laws. Given its continual updates, using Remote's [json-schema-form](https://developer.remote.com/docs/how-json-schemas-work) should be considered in order to avoid + * compliance issues and to have the latest version of a country requirements. + * + * If you are using this endpoint to build an integration, make sure you are dynamically collecting or + * displaying the latest parameters for each country by querying the _"Show form schema"_ endpoint. + * + * For more information on JSON Schemas, see the **How JSON Schemas work** documentation. + * + * To learn how you can dynamically generate forms to display in your UI, see the documentation for + * the [json-schema-form](https://developer.remote.com/docs/how-json-schemas-form) tool. + * + * + * + * ## Scopes + * + * | Category | Read only Scope | Write only Scope (read access implicit) | + * |---|---|---| + * | Manage employments (`employments`) | - | Manage employments (`employment:write`) | + * + */ +export const putV2EmploymentsEmploymentIdPersonalDetails = < + ThrowOnError extends boolean = false, +>( + options: Options< + PutV2EmploymentsEmploymentIdPersonalDetailsData, + ThrowOnError + >, +) => + (options.client ?? client).put< + PutV2EmploymentsEmploymentIdPersonalDetailsResponses, + PutV2EmploymentsEmploymentIdPersonalDetailsErrors, + ThrowOnError + >({ + url: '/v2/employments/{employment_id}/personal_details', + ...options, + headers: { + 'Content-Type': 'application/json', + ...options.headers, + }, + }); + +/** + * Show Contract Amendment * - * Lists all Time Off records. + * Show a single Contract Amendment request. * * ## Scopes * * | Category | Read only Scope | Write only Scope (read access implicit) | * |---|---|---| - * | Manage timeoffs (`time_and_attendance`) | View timeoffs (`timeoff:read`) | Manage timeoffs (`timeoff:write`) | + * | Manage employments (`employments`) | View contract amendments (`contract_amendment:read`) | Manage contract amendments (`contract_amendment:write`) | * */ -export const getV1Timeoff = ( - options: Options, +export const getV1ContractAmendmentsId = ( + options: Options, ) => (options.client ?? client).get< - GetV1TimeoffResponses, - GetV1TimeoffErrors, + GetV1ContractAmendmentsIdResponses, + GetV1ContractAmendmentsIdErrors, ThrowOnError - >({ - security: [ - { scheme: 'bearer', type: 'http' }, - { scheme: 'bearer', type: 'http' }, - ], - url: '/v1/timeoff', - ...options, - }); + >({ url: '/v1/contract-amendments/{id}', ...options }); /** - * Create Time Off + * Decline Identity Verification + * + * Declines the identity verification of an employee. * - * Creates a Time Off record * * ## Scopes * * | Category | Read only Scope | Write only Scope (read access implicit) | * |---|---|---| - * | Manage timeoffs (`time_and_attendance`) | - | Manage timeoffs (`timeoff:write`) | + * | Manage employment documents (`employment_documents`) | - | Manage identity verification (`identity_verification:write`) | * */ -export const postV1Timeoff = ( - options: Options, +export const postV1IdentityVerificationEmploymentIdDecline = < + ThrowOnError extends boolean = false, +>( + options: Options< + PostV1IdentityVerificationEmploymentIdDeclineData, + ThrowOnError + >, ) => (options.client ?? client).post< - PostV1TimeoffResponses, - PostV1TimeoffErrors, + PostV1IdentityVerificationEmploymentIdDeclineResponses, + PostV1IdentityVerificationEmploymentIdDeclineErrors, ThrowOnError - >({ - security: [ - { scheme: 'bearer', type: 'http' }, - { scheme: 'bearer', type: 'http' }, - ], - url: '/v1/timeoff', - ...options, - headers: { - 'Content-Type': 'application/json', - ...options.headers, - }, - }); + >({ url: '/v1/identity-verification/{employment_id}/decline', ...options }); /** - * List Company Payroll Runs + * List expense categories for the authenticated employee * - * Lists all payroll runs for a company + * Returns the flat list of expense categories applicable to the current employee. Only active categories are returned, filtered by the employee's country / legal-entity visibility rules. Leaf nodes have `is_selectable: true`; parent nodes are excluded unless `include_parents=true`. * * ## Scopes * * | Category | Read only Scope | Write only Scope (read access implicit) | * |---|---|---| - * | Manage payroll runs (`payroll`) | View payroll runs (`payroll_run:read`) | - | + * | Manage expenses (`employment_payments`) | View expenses (`expense:read`) | Manage expenses (`expense:write`) | * */ -export const getV1PayrollRuns = ( - options?: Options, +export const getV1EmployeeExpenseCategories = < + ThrowOnError extends boolean = false, +>( + options?: Options, ) => (options?.client ?? client).get< - GetV1PayrollRunsResponses, - GetV1PayrollRunsErrors, + GetV1EmployeeExpenseCategoriesResponses, + GetV1EmployeeExpenseCategoriesErrors, + ThrowOnError + >({ url: '/v1/employee/expense-categories', ...options }); + +/** + * Creates a CSV cost estimation of employments + * + * Creates CSV cost estimation of employments + */ +export const postV1CostCalculatorEstimationCsv = < + ThrowOnError extends boolean = false, +>( + options?: Options, +) => + (options?.client ?? client).post< + PostV1CostCalculatorEstimationCsvResponses, + PostV1CostCalculatorEstimationCsvErrors, ThrowOnError >({ - security: [ - { scheme: 'bearer', type: 'http' }, - { scheme: 'bearer', type: 'http' }, - ], - url: '/v1/payroll-runs', + url: '/v1/cost-calculator/estimation-csv', ...options, + headers: { + 'Content-Type': 'application/json', + ...options?.headers, + }, }); /** - * Find or create a pre-onboarding document for an employment + * Retrieve a pre-onboarding document with its rendered PDF content * - * Finds an existing unsigned pre-onboarding document for the given requirement, or creates a new one. - * Idempotent: repeated calls with the same `pre_onboarding_document_requirement_slug` return the same - * document until it is signed. + * Returns the rendered contract PDF (base64-encoded) and the list of signatories for the given + * pre-onboarding document. The `content` field is prefixed with `data:application/pdf;base64,` so + * it can be embedded directly in a document viewer. * * * ## Scopes * * | Category | Read only Scope | Write only Scope (read access implicit) | * |---|---|---| - * | Manage employment documents (`employment_documents`) | - | Manage documents (`document:write`) | + * | Manage employment documents (`employment_documents`) | View documents (`document:read`) | Manage documents (`document:write`) | * */ -export const postV1OnboardingEmploymentsEmploymentIdPreOnboardingDocuments = < +export const getV1OnboardingEmploymentsEmploymentIdPreOnboardingDocumentsId = < ThrowOnError extends boolean = false, >( options: Options< - PostV1OnboardingEmploymentsEmploymentIdPreOnboardingDocumentsData, + GetV1OnboardingEmploymentsEmploymentIdPreOnboardingDocumentsIdData, ThrowOnError >, ) => - (options.client ?? client).post< - PostV1OnboardingEmploymentsEmploymentIdPreOnboardingDocumentsResponses, - PostV1OnboardingEmploymentsEmploymentIdPreOnboardingDocumentsErrors, + (options.client ?? client).get< + GetV1OnboardingEmploymentsEmploymentIdPreOnboardingDocumentsIdResponses, + GetV1OnboardingEmploymentsEmploymentIdPreOnboardingDocumentsIdErrors, ThrowOnError >({ - security: [ - { scheme: 'bearer', type: 'http' }, - { scheme: 'bearer', type: 'http' }, - ], - url: '/v1/onboarding/employments/{employment_id}/pre-onboarding-documents', + url: '/v1/onboarding/employments/{employment_id}/pre-onboarding-documents/{id}', ...options, - headers: { - 'Content-Type': 'application/json', - ...options.headers, - }, }); /** - * List a company's pending actions - * - * Given a company ID, returns the company-level actions still pending for the company — for - * example company verification and Remote Payments setup. The list can be empty or contain one - * or more actions; `setup_remote_payments` is returned once per legal entity that needs it. + * List Billing Documents * + * List billing documents for a company * * ## Scopes * * | Category | Read only Scope | Write only Scope (read access implicit) | * |---|---|---| - * | Manage company resources (`company_admin`) | View companies (`company:read`) | Manage companies (`company:write`) | + * | Manage invoices (`invoices`) | View invoices (`invoices:read`) | Manage invoices (`invoices:write`) | * */ -export const getV1CompaniesCompanyIdActions = < - ThrowOnError extends boolean = false, ->( - options: Options, +export const getV1BillingDocuments = ( + options: Options, ) => (options.client ?? client).get< - GetV1CompaniesCompanyIdActionsResponses, - GetV1CompaniesCompanyIdActionsErrors, + GetV1BillingDocumentsResponses, + GetV1BillingDocumentsErrors, ThrowOnError - >({ - security: [ - { scheme: 'bearer', type: 'http' }, - { scheme: 'bearer', type: 'http' }, - ], - url: '/v1/companies/{company_id}/actions', - ...options, - }); + >({ url: '/v1/billing-documents', ...options }); /** - * Get group by ID via SCIM v2.0 + * Show Billing Document + * + * Shows a billing document details. + * + * Please contact api-support@remote.com to request access to this endpoint. + * + * + * ## Scopes + * + * | Category | Read only Scope | Write only Scope (read access implicit) | + * |---|---|---| + * | Manage invoices (`invoices`) | View invoices (`invoices:read`) | Manage invoices (`invoices:write`) | * - * Retrieves a single group (department) for the authenticated company by group ID */ -export const getV1ScimV2GroupsId = ( - options: Options, +export const getV1BillingDocumentsBillingDocumentId = < + ThrowOnError extends boolean = false, +>( + options: Options, ) => (options.client ?? client).get< - GetV1ScimV2GroupsIdResponses, - GetV1ScimV2GroupsIdErrors, + GetV1BillingDocumentsBillingDocumentIdResponses, + GetV1BillingDocumentsBillingDocumentIdErrors, ThrowOnError - >({ - security: [{ scheme: 'bearer', type: 'http' }], - url: '/v1/scim/v2/Groups/{id}', - ...options, - }); + >({ url: '/v1/billing-documents/{billing_document_id}', ...options }); /** - * List Employment Contract. - * - * Get the employment contract history for a given employment. If `only_active` is true, it will return only the active or last active contract. + * Indexes all the documents for the employee * * ## Scopes * * | Category | Read only Scope | Write only Scope (read access implicit) | * |---|---|---| - * | Manage employments (`employments`) | View contracts (`contract:read`) | - | + * | Manage employment documents (`employment_documents`) | View documents (`document:read`) | Manage documents (`document:write`) | * */ -export const getV1EmploymentContracts = ( - options: Options, +export const getV1EmployeeDocuments = ( + options?: Options, ) => - (options.client ?? client).get< - GetV1EmploymentContractsResponses, - GetV1EmploymentContractsErrors, + (options?.client ?? client).get< + GetV1EmployeeDocumentsResponses, + GetV1EmployeeDocumentsErrors, ThrowOnError - >({ - security: [ - { scheme: 'bearer', type: 'http' }, - { scheme: 'bearer', type: 'http' }, - ], - url: '/v1/employment-contracts', - ...options, - }); + >({ url: '/v1/employee/documents', ...options }); /** - * Convert currency using dynamic rates + * Upload employee file + * + * Uploads a file owned by the authenticated employee, for example + * identity documents or tax forms. * - * Convert currency using the rates Remote applies during employment creation and invoicing. * * ## Scopes * * | Category | Read only Scope | Write only Scope (read access implicit) | * |---|---|---| - * | Manage company resources (`company_admin`) | Convert currencies (`convert_currency:read`) | - | + * | Manage employment documents (`employment_documents`) | - | Manage documents (`document:write`) | * */ -export const postV1CurrencyConverterEffective2 = < - ThrowOnError extends boolean = false, ->( - options: Options, +export const postV1EmployeeDocuments = ( + options: Options, ) => (options.client ?? client).post< - PostV1CurrencyConverterEffective2Responses, - PostV1CurrencyConverterEffective2Errors, + PostV1EmployeeDocumentsResponses, + PostV1EmployeeDocumentsErrors, ThrowOnError >({ - security: [ - { scheme: 'bearer', type: 'http' }, - { scheme: 'bearer', type: 'http' }, - { scheme: 'bearer', type: 'http' }, - ], - url: '/v1/currency-converter', + ...formDataBodySerializer, + url: '/v1/employee/documents', ...options, headers: { - 'Content-Type': 'application/json', + 'Content-Type': null, ...options.headers, }, }); /** - * List all companies + * List employee time offs * - * List all companies that authorized your integration to act on their behalf. In other words, these are all the companies that your integration can manage. Any company that has completed the authorization flow for your integration will be included in the response. + * Lists the current employee's time off records * * ## Scopes * * | Category | Read only Scope | Write only Scope (read access implicit) | * |---|---|---| - * | Manage company resources (`company_admin`) | View companies (`company:read`) | Manage companies (`company:write`) | + * | Manage timeoffs (`time_and_attendance`) | View timeoffs (`timeoff:read`) | Manage timeoffs (`timeoff:write`) | * */ -export const getV1Companies = ( - options: Options, +export const getV1EmployeeTimeoff = ( + options?: Options, ) => - (options.client ?? client).get< - GetV1CompaniesResponses, - GetV1CompaniesErrors, + (options?.client ?? client).get< + GetV1EmployeeTimeoffResponses, + GetV1EmployeeTimeoffErrors, ThrowOnError - >({ - security: [{ scheme: 'bearer', type: 'http' }], - url: '/v1/companies', - ...options, - }); + >({ url: '/v1/employee/timeoff', ...options }); /** - * Create a company - * - * Creates a new company. - * - * ### Creating a company with only the required request body parameters - * When you call this endpoint and omit all the optional parameters in the request body, - * the following resources get created upon a successful response: - * * A new company with status `pending`. - * * A company owner for the new company with status `initiated`. - * - * See the [update a company endpoint](#tag/Companies/operation/patch_update_company) for - * more details on how to get your company and its owner to `active` status. - * - * If you'd like to create a company and its owner with `active` status in a single request, - * please provide the optional `address_details` parameter as well. - * - * ### Accepting the Terms of Service - * - * A required step for creating a company in Remote is to accept our Terms of Service (ToS). - * - * Company managers need to be aware of our Terms of Service and Privacy Policy, - * hence **it's the responsibility of our partners to advise and ensure company managers read - * and accept the ToS**. The terms have to be accepted only once, before creating a company, - * and the Remote API will collect the acceptance timestamp as its confirmation. - * - * To ensure users read the most recent version of Remote's Terms of Service, their **acceptance - * must be done within the last fifteen minutes prior the company creation action**. - * - * To retrieve this information, partners can provide an element with any text and a description - * explaining that by performing that action they are accepting Remote's Term of Service. For - * instance, the partner can add a checkbox or a "Create Remote Account" button followed by a - * description saying "By creating an account, you agree to - * [Remote's Terms of Service](https://remote.com/terms-of-service). Also see Remote's - * [Privacy Policy](https://remote.com/privacy-policy)". + * Create a Pending Time Off * + * Creates a pending Time Off record * * ## Scopes * * | Category | Read only Scope | Write only Scope (read access implicit) | * |---|---|---| - * | Manage companies (`company_management`) | - | Manage companies (`company:write`) | + * | Manage timeoffs (`time_and_attendance`) | - | Manage timeoffs (`timeoff:write`) | * */ -export const postV1Companies = ( - options: Options, +export const postV1EmployeeTimeoff = ( + options: Options, ) => (options.client ?? client).post< - PostV1CompaniesResponses, - PostV1CompaniesErrors, + PostV1EmployeeTimeoffResponses, + PostV1EmployeeTimeoffErrors, ThrowOnError >({ - security: [{ scheme: 'bearer', type: 'http' }], - url: '/v1/companies', + url: '/v1/employee/timeoff', ...options, headers: { 'Content-Type': 'application/json', @@ -8900,9 +7804,9 @@ export const postV1Companies = ( }); /** - * Update billing address details + * Update personal details * - * Updates employment's billing address details. + * Updates employment's personal details. * * This endpoint requires and returns country-specific data. The exact required and returned fields will * vary depending on which country the employment is in. To see the list of parameters for each country, @@ -8929,24 +7833,20 @@ export const postV1Companies = ( * | Manage employments (`employments`) | - | Manage employments (`employment:write`) | * */ -export const putV2EmploymentsEmploymentIdBillingAddressDetails = < +export const putV1EmploymentsEmploymentIdPersonalDetails = < ThrowOnError extends boolean = false, >( options: Options< - PutV2EmploymentsEmploymentIdBillingAddressDetailsData, + PutV1EmploymentsEmploymentIdPersonalDetailsData, ThrowOnError >, ) => (options.client ?? client).put< - PutV2EmploymentsEmploymentIdBillingAddressDetailsResponses, - PutV2EmploymentsEmploymentIdBillingAddressDetailsErrors, + PutV1EmploymentsEmploymentIdPersonalDetailsResponses, + PutV1EmploymentsEmploymentIdPersonalDetailsErrors, ThrowOnError >({ - security: [ - { scheme: 'bearer', type: 'http' }, - { scheme: 'bearer', type: 'http' }, - ], - url: '/v2/employments/{employment_id}/billing-address-details', + url: '/v1/employments/{employment_id}/personal_details', ...options, headers: { 'Content-Type': 'application/json', @@ -8955,64 +7855,94 @@ export const putV2EmploymentsEmploymentIdBillingAddressDetails = < }); /** - * Create bulk employment job + * Show Probation Extension + * + * Shows a Probation Extension Request. * - * Creates a job to bulk-create employments for multiple employees at once. Each employee payload must match the employment schema for the selected country. * * ## Scopes * * | Category | Read only Scope | Write only Scope (read access implicit) | * |---|---|---| - * | Manage employments (`employments`) | - | Manage employments (`employment:write`) | + * | Manage employment documents (`employment_documents`) | View probation documents (`probation_document:read`) | Manage probation documents (`probation_document:write`) | * */ -export const postV1BulkEmploymentJobs = ( - options?: Options, +export const getV1ProbationExtensionsId = < + ThrowOnError extends boolean = false, +>( + options: Options, ) => - (options?.client ?? client).post< - PostV1BulkEmploymentJobsResponses, - PostV1BulkEmploymentJobsErrors, + (options.client ?? client).get< + GetV1ProbationExtensionsIdResponses, + GetV1ProbationExtensionsIdErrors, ThrowOnError - >({ - security: [ - { scheme: 'bearer', type: 'http' }, - { scheme: 'bearer', type: 'http' }, - ], - url: '/v1/bulk-employment-jobs', - ...options, - headers: { - 'Content-Type': 'application/json', - ...options?.headers, - }, - }); + >({ url: '/v1/probation-extensions/{id}', ...options }); /** - * Send back a timesheet for review or modification + * Download file + * + * Downloads a file. * - * Sends the given timesheet back to the employee for review or modification. * * ## Scopes * * | Category | Read only Scope | Write only Scope (read access implicit) | * |---|---|---| - * | Manage timeoffs (`time_and_attendance`) | - | Manage timesheets (`timesheet:write`) | + * | Manage employment documents (`employment_documents`) | View documents (`document:read`) | Manage documents (`document:write`) | * */ -export const postV1TimesheetsTimesheetIdSendBack = < - ThrowOnError extends boolean = false, ->( - options: Options, +export const getV1FilesId = ( + options: Options, +) => + (options.client ?? client).get< + GetV1FilesIdResponses, + GetV1FilesIdErrors, + ThrowOnError + >({ url: '/v1/files/{id}', ...options }); + +/** + * List Company Departments + * + * Lists all departments for the authorized company specified in the request. + * + * + * ## Scopes + * + * | Category | Read only Scope | Write only Scope (read access implicit) | + * |---|---|---| + * | Manage company resources (`company_admin`) | View departments (`company_department:read`) | Manage departments (`company_department:write`) | + * + */ +export const getV1CompanyDepartments = ( + options: Options, +) => + (options.client ?? client).get< + GetV1CompanyDepartmentsResponses, + GetV1CompanyDepartmentsErrors, + ThrowOnError + >({ url: '/v1/company-departments', ...options }); + +/** + * Create New Department + * + * Creates a new department in the specified company. Department names may be non-unique and must be non-empty with no more than 255 characters (Unicode code points). + * + * ## Scopes + * + * | Category | Read only Scope | Write only Scope (read access implicit) | + * |---|---|---| + * | Manage company resources (`company_admin`) | - | Manage departments (`company_department:write`) | + * + */ +export const postV1CompanyDepartments = ( + options: Options, ) => (options.client ?? client).post< - PostV1TimesheetsTimesheetIdSendBackResponses, - PostV1TimesheetsTimesheetIdSendBackErrors, + PostV1CompanyDepartmentsResponses, + PostV1CompanyDepartmentsErrors, ThrowOnError >({ - security: [ - { scheme: 'bearer', type: 'http' }, - { scheme: 'bearer', type: 'http' }, - ], - url: '/v1/timesheets/{timesheet_id}/send-back', + url: '/v1/company-departments', ...options, headers: { 'Content-Type': 'application/json', @@ -9021,69 +7951,99 @@ export const postV1TimesheetsTimesheetIdSendBack = < }); /** - * Deletes a Company Manager user + * Get Employee Details for a Payroll Run * - * Deletes a Company Manager user + * Gets the employee details for a payroll run * * ## Scopes * * | Category | Read only Scope | Write only Scope (read access implicit) | * |---|---|---| - * | Manage company resources (`company_admin`) | - | Manage managers (`company_manager:write`) | + * | Manage payroll runs (`payroll`) | View payroll runs (`payroll_run:read`) | - | * */ -export const deleteV1CompanyManagersUserId = < +export const getV1PayrollRunsPayrollRunIdEmployeeDetails = < ThrowOnError extends boolean = false, >( - options: Options, + options: Options< + GetV1PayrollRunsPayrollRunIdEmployeeDetailsData, + ThrowOnError + >, ) => - (options.client ?? client).delete< - DeleteV1CompanyManagersUserIdResponses, - DeleteV1CompanyManagersUserIdErrors, + (options.client ?? client).get< + GetV1PayrollRunsPayrollRunIdEmployeeDetailsResponses, + GetV1PayrollRunsPayrollRunIdEmployeeDetailsErrors, ThrowOnError - >({ - security: [ - { scheme: 'bearer', type: 'http' }, - { scheme: 'bearer', type: 'http' }, - ], - url: '/v1/company-managers/{user_id}', - ...options, - }); + >({ url: '/v1/payroll-runs/{payroll_run_id}/employee-details', ...options }); /** - * Show company manager user + * Show employment + * + * Shows all the information of an employment. + * + * This endpoint requires and returns country-specific data. The exact required and returned fields will + * vary depending on which country the employment is in. To see the list of parameters for each country, + * see the **Show form schema** endpoint under the [Countries](#tag/Countries) category. + * + * Please note that the compliance requirements for each country are subject to change according to local + * laws. Given its continual updates, using Remote's [json-schema-form](https://developer.remote.com/docs/how-json-schemas-work) should be considered in order to avoid + * compliance issues and to have the latest version of a country requirements. + * + * If you are using this endpoint to build an integration, make sure you are dynamically collecting or + * displaying the latest parameters for each country by querying the _"Show form schema"_ endpoint. + * + * For more information on JSON Schemas, see the **How JSON Schemas work** documentation. + * + * To learn how you can dynamically generate forms to display in your UI, see the documentation for + * the [json-schema-form](https://developer.remote.com/docs/how-json-schemas-work) tool. + * * - * Shows a single company manager user * * ## Scopes * * | Category | Read only Scope | Write only Scope (read access implicit) | * |---|---|---| - * | Manage company resources (`company_admin`) | View managers (`company_manager:read`) | Manage managers (`company_manager:write`) | + * | Manage employments (`employments`) | View employments (`employment:read`) | Manage employments (`employment:write`) | * */ -export const getV1CompanyManagersUserId = < +export const getV1EmploymentsEmploymentId = < ThrowOnError extends boolean = false, >( - options: Options, + options: Options, ) => (options.client ?? client).get< - GetV1CompanyManagersUserIdResponses, - GetV1CompanyManagersUserIdErrors, + GetV1EmploymentsEmploymentIdResponses, + GetV1EmploymentsEmploymentIdErrors, ThrowOnError - >({ - security: [ - { scheme: 'bearer', type: 'http' }, - { scheme: 'bearer', type: 'http' }, - ], - url: '/v1/company-managers/{user_id}', - ...options, - }); + >({ url: '/v1/employments/{employment_id}', ...options }); /** - * Update personal details + * Update employment * - * Updates employment's personal details. + * Updates an employment. + * + * **For `created` employments:** You can change all basic params and onboarding tasks or perform a per onboarding task update. You can also update basic_information. + * + * **For `active` employments:** You can update the manager (`manager_id` field), emergency_contact_details, address_details and work_email. + * + * **For `invited` employments:** You can update the work_email. + * + * After onboarding, only a limited set of employment data will be available for updates, such as `emergency_contact_details`. + * If you want to provide additional information for an employment, please make sure to do so **before** the employee is invited. + * We block updates to some employment data because employees need to agree to amendments in certain cases, such as when there are changes to their contract_details. + * Currently, these amendments can only be done through the Remote UI. + * + * It is possible to update the `external_id` of the employment for all employment statuses. + * + * ## Global Payroll Employees + * + * To update a Global Payment employment your input data must comply with the global payroll json schemas. + * + * **For `active` employments:** In addition to the above list, you can update personal_details. + * + * ## Direct Employees + * + * To update an HRIS employment your input data must comply with the HRIS json schemas. * * This endpoint requires and returns country-specific data. The exact required and returned fields will * vary depending on which country the employment is in. To see the list of parameters for each country, @@ -9099,9 +8059,11 @@ export const getV1CompanyManagersUserId = < * For more information on JSON Schemas, see the **How JSON Schemas work** documentation. * * To learn how you can dynamically generate forms to display in your UI, see the documentation for - * the [json-schema-form](https://developer.remote.com/docs/how-json-schemas-form) tool. + * the [json-schema-form](https://developer.remote.com/docs/how-json-schemas-work) tool. * * + * Please contact Remote if you need to update contractors via API since it's currently not supported. + * * * ## Scopes * @@ -9110,24 +8072,17 @@ export const getV1CompanyManagersUserId = < * | Manage employments (`employments`) | - | Manage employments (`employment:write`) | * */ -export const putV1EmploymentsEmploymentIdPersonalDetails = < +export const patchV1EmploymentsEmploymentId2 = < ThrowOnError extends boolean = false, >( - options: Options< - PutV1EmploymentsEmploymentIdPersonalDetailsData, - ThrowOnError - >, + options: Options, ) => - (options.client ?? client).put< - PutV1EmploymentsEmploymentIdPersonalDetailsResponses, - PutV1EmploymentsEmploymentIdPersonalDetailsErrors, + (options.client ?? client).patch< + PatchV1EmploymentsEmploymentId2Responses, + PatchV1EmploymentsEmploymentId2Errors, ThrowOnError >({ - security: [ - { scheme: 'bearer', type: 'http' }, - { scheme: 'bearer', type: 'http' }, - ], - url: '/v1/employments/{employment_id}/personal-details', + url: '/v1/employments/{employment_id}', ...options, headers: { 'Content-Type': 'application/json', @@ -9136,226 +8091,220 @@ export const putV1EmploymentsEmploymentIdPersonalDetails = < }); /** - * List expenses for the authenticated employee + * Update employment * - * Returns a paginated list of expenses belonging to the current employee. + * Updates an employment. * - * ## Scopes + * **For `created` employments:** You can change all basic params and onboarding tasks or perform a per onboarding task update. You can also update basic_information. * - * | Category | Read only Scope | Write only Scope (read access implicit) | - * |---|---|---| - * | Manage expenses (`employment_payments`) | View expenses (`expense:read`) | Manage expenses (`expense:write`) | + * **For `active` employments:** You can update the manager (`manager_id` field), emergency_contact_details, address_details and work_email. * - */ -export const getV1EmployeeExpenses = ( - options?: Options, -) => - (options?.client ?? client).get< - GetV1EmployeeExpensesResponses, - GetV1EmployeeExpensesErrors, - ThrowOnError - >({ - security: [{ scheme: 'bearer', type: 'http' }], - url: '/v1/employee/expenses', - ...options, - }); - -/** - * Create an expense for the authenticated employee + * **For `invited` employments:** You can update the work_email. + * + * After onboarding, only a limited set of employment data will be available for updates, such as `emergency_contact_details`. + * If you want to provide additional information for an employment, please make sure to do so **before** the employee is invited. + * We block updates to some employment data because employees need to agree to amendments in certain cases, such as when there are changes to their contract_details. + * Currently, these amendments can only be done through the Remote UI. + * + * It is possible to update the `external_id` of the employment for all employment statuses. + * + * ## Global Payroll Employees + * + * To update a Global Payment employment your input data must comply with the global payroll json schemas. + * + * **For `active` employments:** In addition to the above list, you can update personal_details. + * + * ## Direct Employees + * + * To update an HRIS employment your input data must comply with the HRIS json schemas. + * + * This endpoint requires and returns country-specific data. The exact required and returned fields will + * vary depending on which country the employment is in. To see the list of parameters for each country, + * see the **Show form schema** endpoint under the [Countries](#tag/Countries) category. + * + * Please note that the compliance requirements for each country are subject to change according to local + * laws. Given its continual updates, using Remote's [json-schema-form](https://developer.remote.com/docs/how-json-schemas-work) should be considered in order to avoid + * compliance issues and to have the latest version of a country requirements. + * + * If you are using this endpoint to build an integration, make sure you are dynamically collecting or + * displaying the latest parameters for each country by querying the _"Show form schema"_ endpoint. + * + * For more information on JSON Schemas, see the **How JSON Schemas work** documentation. + * + * To learn how you can dynamically generate forms to display in your UI, see the documentation for + * the [json-schema-form](https://developer.remote.com/docs/how-json-schemas-work) tool. + * + * + * Please contact Remote if you need to update contractors via API since it's currently not supported. * - * Creates a new expense record for the current employee. * * ## Scopes * * | Category | Read only Scope | Write only Scope (read access implicit) | * |---|---|---| - * | Manage expenses (`employment_payments`) | - | Manage expenses (`expense:write`) | + * | Manage employments (`employments`) | - | Manage employments (`employment:write`) | * */ -export const postV1EmployeeExpenses = ( - options?: Options, +export const patchV1EmploymentsEmploymentId = < + ThrowOnError extends boolean = false, +>( + options: Options, ) => - (options?.client ?? client).post< - PostV1EmployeeExpensesResponses, - PostV1EmployeeExpensesErrors, + (options.client ?? client).put< + PatchV1EmploymentsEmploymentIdResponses, + PatchV1EmploymentsEmploymentIdErrors, ThrowOnError >({ - security: [{ scheme: 'bearer', type: 'http' }], - url: '/v1/employee/expenses', + url: '/v1/employments/{employment_id}', ...options, headers: { 'Content-Type': 'application/json', - ...options?.headers, + ...options.headers, }, }); /** - * Delete contractor of record subscription intent - * - * Deletes Contractor of Record subscription intent. + * List timesheets for the authenticated employee * + * Returns a paginated list of timesheets for the authenticated employee. * * ## Scopes * * | Category | Read only Scope | Write only Scope (read access implicit) | * |---|---|---| - * | Manage employments (`employments`) | - | Manage employments (`employment:write`) | + * | Manage timeoffs (`time_and_attendance`) | View timesheets (`timesheet:read`) | Manage timesheets (`timesheet:write`) | * */ -export const deleteV1ContractorsEmploymentsEmploymentIdContractorCorSubscription = - ( - options: Options< - DeleteV1ContractorsEmploymentsEmploymentIdContractorCorSubscriptionData, - ThrowOnError - >, - ) => - (options.client ?? client).delete< - DeleteV1ContractorsEmploymentsEmploymentIdContractorCorSubscriptionResponses, - DeleteV1ContractorsEmploymentsEmploymentIdContractorCorSubscriptionErrors, - ThrowOnError - >({ - security: [ - { scheme: 'bearer', type: 'http' }, - { scheme: 'bearer', type: 'http' }, - ], - url: '/v1/contractors/employments/{employment_id}/contractor-cor-subscription', - ...options, - }); +export const getV1EmployeeTimesheets = ( + options?: Options, +) => + (options?.client ?? client).get< + GetV1EmployeeTimesheetsResponses, + GetV1EmployeeTimesheetsErrors, + ThrowOnError + >({ url: '/v1/employee/timesheets', ...options }); /** - * Create contractor of record subscription intent - * - * Assigns Contractor of Record subscription in pending state to employment. - * Once risk analysis is performed, subscription may start upon contract signing, - * or might be denied. - * - * Requires a non-blocking eligibility questionnaire to be submitted before creating the subscription intent. + * Show a custom field value * + * Returns a custom field value for a given employment * * ## Scopes * * | Category | Read only Scope | Write only Scope (read access implicit) | * |---|---|---| - * | Manage employments (`employments`) | - | Manage employments (`employment:write`) | + * | Manage employments (`employments`) | View custom field values (`custom_field_value:read`) | Manage custom field values (`custom_field_value:write`) | * */ -export const postV1ContractorsEmploymentsEmploymentIdContractorCorSubscription = - ( - options: Options< - PostV1ContractorsEmploymentsEmploymentIdContractorCorSubscriptionData, - ThrowOnError - >, - ) => - (options.client ?? client).post< - PostV1ContractorsEmploymentsEmploymentIdContractorCorSubscriptionResponses, - PostV1ContractorsEmploymentsEmploymentIdContractorCorSubscriptionErrors, - ThrowOnError - >({ - security: [ - { scheme: 'bearer', type: 'http' }, - { scheme: 'bearer', type: 'http' }, - ], - url: '/v1/contractors/employments/{employment_id}/contractor-cor-subscription', - ...options, - }); +export const getV1CustomFieldsCustomFieldIdValuesEmploymentId = < + ThrowOnError extends boolean = false, +>( + options: Options< + GetV1CustomFieldsCustomFieldIdValuesEmploymentIdData, + ThrowOnError + >, +) => + (options.client ?? client).get< + GetV1CustomFieldsCustomFieldIdValuesEmploymentIdResponses, + GetV1CustomFieldsCustomFieldIdValuesEmploymentIdErrors, + ThrowOnError + >({ + url: '/v1/custom-fields/{custom_field_id}/values/{employment_id}', + ...options, + }); /** - * Sign a pre-onboarding document - * - * Signs the latest contract document associated with the given pre-onboarding document on behalf - * of the company signatory. + * Update a Custom Field Value * + * Updates a custom field value for a given employment. * * ## Scopes * * | Category | Read only Scope | Write only Scope (read access implicit) | * |---|---|---| - * | Manage employment documents (`employment_documents`) | - | Manage documents (`document:write`) | + * | Manage employments (`employments`) | - | Manage custom field values (`custom_field_value:write`) | * */ -export const postV1OnboardingEmploymentsEmploymentIdPreOnboardingDocumentsIdSign = - ( - options: Options< - PostV1OnboardingEmploymentsEmploymentIdPreOnboardingDocumentsIdSignData, - ThrowOnError - >, - ) => - (options.client ?? client).post< - PostV1OnboardingEmploymentsEmploymentIdPreOnboardingDocumentsIdSignResponses, - PostV1OnboardingEmploymentsEmploymentIdPreOnboardingDocumentsIdSignErrors, - ThrowOnError - >({ - security: [ - { scheme: 'bearer', type: 'http' }, - { scheme: 'bearer', type: 'http' }, - ], - url: '/v1/onboarding/employments/{employment_id}/pre-onboarding-documents/{id}/sign', - ...options, - headers: { - 'Content-Type': 'application/json', - ...options.headers, - }, - }); +export const patchV1CustomFieldsCustomFieldIdValuesEmploymentId2 = < + ThrowOnError extends boolean = false, +>( + options: Options< + PatchV1CustomFieldsCustomFieldIdValuesEmploymentId2Data, + ThrowOnError + >, +) => + (options.client ?? client).patch< + PatchV1CustomFieldsCustomFieldIdValuesEmploymentId2Responses, + PatchV1CustomFieldsCustomFieldIdValuesEmploymentId2Errors, + ThrowOnError + >({ + url: '/v1/custom-fields/{custom_field_id}/values/{employment_id}', + ...options, + headers: { + 'Content-Type': 'application/json', + ...options.headers, + }, + }); /** - * List Contractor Invoice Schedules + * Update a Custom Field Value * - * Lists Contractor Invoice Schedule records. + * Updates a custom field value for a given employment. * * ## Scopes * * | Category | Read only Scope | Write only Scope (read access implicit) | * |---|---|---| - * | Manage invoices (`invoices`) | - | Manage invoices (`invoices:write`) | + * | Manage employments (`employments`) | - | Manage custom field values (`custom_field_value:write`) | * */ -export const getV1ContractorInvoiceSchedules = < +export const patchV1CustomFieldsCustomFieldIdValuesEmploymentId = < ThrowOnError extends boolean = false, >( - options?: Options, + options: Options< + PatchV1CustomFieldsCustomFieldIdValuesEmploymentIdData, + ThrowOnError + >, ) => - (options?.client ?? client).get< - GetV1ContractorInvoiceSchedulesResponses, - GetV1ContractorInvoiceSchedulesErrors, + (options.client ?? client).put< + PatchV1CustomFieldsCustomFieldIdValuesEmploymentIdResponses, + PatchV1CustomFieldsCustomFieldIdValuesEmploymentIdErrors, ThrowOnError >({ - security: [ - { scheme: 'bearer', type: 'http' }, - { scheme: 'bearer', type: 'http' }, - ], - url: '/v1/contractor-invoice-schedules', + url: '/v1/custom-fields/{custom_field_id}/values/{employment_id}', ...options, + headers: { + 'Content-Type': 'application/json', + ...options.headers, + }, }); /** - * Create Contractor Invoice Schedules - * - * Creates many invoice schedules records. - * It's supposed to return two lists: one containing created records, and another one containing the schedules that failed to be inserted. + * Validate resignation request * + * Validates a resignation employment request * * ## Scopes * * | Category | Read only Scope | Write only Scope (read access implicit) | * |---|---|---| - * | Manage invoices (`invoices`) | - | Manage invoices (`invoices:write`) | + * | Manage employments (`employments`) | - | Manage resignations (`resignation:write`) | * */ -export const postV1ContractorInvoiceSchedules = < +export const putV1ResignationsOffboardingRequestIdValidate = < ThrowOnError extends boolean = false, >( - options: Options, + options: Options< + PutV1ResignationsOffboardingRequestIdValidateData, + ThrowOnError + >, ) => - (options.client ?? client).post< - PostV1ContractorInvoiceSchedulesResponses, - PostV1ContractorInvoiceSchedulesErrors, + (options.client ?? client).put< + PutV1ResignationsOffboardingRequestIdValidateResponses, + PutV1ResignationsOffboardingRequestIdValidateErrors, ThrowOnError >({ - security: [ - { scheme: 'bearer', type: 'http' }, - { scheme: 'bearer', type: 'http' }, - ], - url: '/v1/contractor-invoice-schedules', + url: '/v1/resignations/{offboarding_request_id}/validate', ...options, headers: { 'Content-Type': 'application/json', @@ -9364,119 +8313,81 @@ export const postV1ContractorInvoiceSchedules = < }); /** - * Submit employee state taxes - * - * Submits the authenticated employee's US state tax withholding answers for a - * single jurisdiction (e.g. `NY`). - * - * Available for US Global Payroll employees once they reach the post-enrollment - * state, at which point the per-jurisdiction state tax task exists. - * - * This endpoint requires country/jurisdiction-specific data. Query the - * [Show form schema](#tag/Countries/operation/get_show_form_country) endpoint with `global_payroll_state_taxes` - * as the form name to discover the schema for a given country. - * + * Show Contractor Invoice Schedule * + * Shows a single Contractor Invoice Schedule record * * ## Scopes * * | Category | Read only Scope | Write only Scope (read access implicit) | * |---|---|---| - * | Manage employments (`employments`) | - | Manage personal details (`personal_detail:write`) | + * | Manage invoices (`invoices`) | View invoices (`invoices:read`) | Manage invoices (`invoices:write`) | * */ -export const putV1EmployeeStateTaxesJurisdiction = < +export const getV1ContractorInvoiceSchedulesId = < ThrowOnError extends boolean = false, >( - options: Options, + options: Options, ) => - (options.client ?? client).put< - PutV1EmployeeStateTaxesJurisdictionResponses, - PutV1EmployeeStateTaxesJurisdictionErrors, + (options.client ?? client).get< + GetV1ContractorInvoiceSchedulesIdResponses, + GetV1ContractorInvoiceSchedulesIdErrors, ThrowOnError - >({ - security: [{ scheme: 'bearer', type: 'http' }], - url: '/v1/employee/state-taxes/{jurisdiction}', - ...options, - headers: { - 'Content-Type': 'application/json', - ...options.headers, - }, - }); + >({ url: '/v1/contractor-invoice-schedules/{id}', ...options }); /** - * Get engagement agreement details + * Updates Contractor Invoice Schedule * - * Returns the engagement agreement details for an employment. + * Updates a contractor invoice schedule record * * ## Scopes * * | Category | Read only Scope | Write only Scope (read access implicit) | * |---|---|---| - * | Manage employments (`employments`) | View employments (`employment:read`) | Manage employments (`employment:write`) | + * | Manage invoices (`invoices`) | - | Manage invoices (`invoices:write`) | * */ -export const getV1EmploymentsEmploymentIdEngagementAgreementDetails = < +export const patchV1ContractorInvoiceSchedulesId2 = < ThrowOnError extends boolean = false, >( - options: Options< - GetV1EmploymentsEmploymentIdEngagementAgreementDetailsData, - ThrowOnError - >, + options: Options, ) => - (options.client ?? client).get< - GetV1EmploymentsEmploymentIdEngagementAgreementDetailsResponses, - GetV1EmploymentsEmploymentIdEngagementAgreementDetailsErrors, + (options.client ?? client).patch< + PatchV1ContractorInvoiceSchedulesId2Responses, + PatchV1ContractorInvoiceSchedulesId2Errors, ThrowOnError >({ - security: [ - { scheme: 'bearer', type: 'http' }, - { scheme: 'bearer', type: 'http' }, - ], - url: '/v1/employments/{employment_id}/engagement-agreement-details', + url: '/v1/contractor-invoice-schedules/{id}', ...options, + headers: { + 'Content-Type': 'application/json', + ...options.headers, + }, }); /** - * Upsert engagement agreement details - * - * Creates or updates the engagement agreement details for an employment. - * - * This endpoint requires country-specific data. The exact required fields will vary depending on - * which country the employment is in. To see the list of parameters for each country, see the - * **Show form schema** endpoint under the [Countries](#tag/Countries) category. - * - * Please note that compliance requirements for each country are subject to change according to local laws. - * Using Remote's [json-schema-form](https://developer.remote.com/docs/how-json-schemas-work) is recommended - * to avoid compliance issues and to have the latest version of a country's requirements. - * + * Updates Contractor Invoice Schedule * + * Updates a contractor invoice schedule record * * ## Scopes * * | Category | Read only Scope | Write only Scope (read access implicit) | * |---|---|---| - * | Manage employments (`employments`) | - | Manage employments (`employment:write`) | + * | Manage invoices (`invoices`) | - | Manage invoices (`invoices:write`) | * */ -export const postV1EmploymentsEmploymentIdEngagementAgreementDetails = < +export const patchV1ContractorInvoiceSchedulesId = < ThrowOnError extends boolean = false, >( - options: Options< - PostV1EmploymentsEmploymentIdEngagementAgreementDetailsData, - ThrowOnError - >, + options: Options, ) => - (options.client ?? client).post< - PostV1EmploymentsEmploymentIdEngagementAgreementDetailsResponses, - PostV1EmploymentsEmploymentIdEngagementAgreementDetailsErrors, + (options.client ?? client).put< + PatchV1ContractorInvoiceSchedulesIdResponses, + PatchV1ContractorInvoiceSchedulesIdErrors, ThrowOnError >({ - security: [ - { scheme: 'bearer', type: 'http' }, - { scheme: 'bearer', type: 'http' }, - ], - url: '/v1/employments/{employment_id}/engagement-agreement-details', + url: '/v1/contractor-invoice-schedules/{id}', ...options, headers: { 'Content-Type': 'application/json', @@ -9485,80 +8396,72 @@ export const postV1EmploymentsEmploymentIdEngagementAgreementDetails = < }); /** - * Get Billing Document Breakdown + * Update pricing plan details + * + * Updates the pricing plan for an employment. The frequency determines how often Remote bills the + * employer for management fees. Annual billing typically offers a discount. * - * Get billing document breakdown * * ## Scopes * * | Category | Read only Scope | Write only Scope (read access implicit) | * |---|---|---| - * | Manage invoices (`invoices`) | View invoices (`invoices:read`) | Manage invoices (`invoices:write`) | + * | Manage employments (`employments`) | - | Manage employments (`employment:write`) | * */ -export const getV1BillingDocumentsBillingDocumentIdBreakdown = < +export const putV2EmploymentsEmploymentIdPricingPlanDetails = < ThrowOnError extends boolean = false, >( options: Options< - GetV1BillingDocumentsBillingDocumentIdBreakdownData, + PutV2EmploymentsEmploymentIdPricingPlanDetailsData, ThrowOnError >, ) => - (options.client ?? client).get< - GetV1BillingDocumentsBillingDocumentIdBreakdownResponses, - GetV1BillingDocumentsBillingDocumentIdBreakdownErrors, + (options.client ?? client).put< + PutV2EmploymentsEmploymentIdPricingPlanDetailsResponses, + PutV2EmploymentsEmploymentIdPricingPlanDetailsErrors, ThrowOnError >({ - security: [ - { scheme: 'bearer', type: 'http' }, - { scheme: 'bearer', type: 'http' }, - ], - url: '/v1/billing-documents/{billing_document_id}/breakdown', + url: '/v2/employments/{employment_id}/pricing_plan_details', ...options, + headers: { + 'Content-Type': 'application/json', + ...options.headers, + }, }); /** - * Preview the Employment Agreement for an employment - * - * Returns a base64-encoded PDF preview of the auto-generated Employment Agreement for an employment. - * - * The document is rendered as a draft (no signatures) and is not persisted. EA preview is only - * available for countries that have a published Employment Agreement automation template — see the - * `employment_agreement_preview_available` flag on the [Countries](#tag/Countries) endpoint. + * Create risk reserve * + * Create a new risk reserve * * ## Scopes * * | Category | Read only Scope | Write only Scope (read access implicit) | * |---|---|---| - * | Manage employment documents (`employment_documents`) | View documents (`document:read`) | Manage documents (`document:write`) | + * | Manage company resources (`company_admin`) | - | Manage risk reserves (`risk_reserve:write`) | * */ -export const getV1EmploymentsEmploymentIdEmploymentAgreementPreview = < - ThrowOnError extends boolean = false, ->( - options: Options< - GetV1EmploymentsEmploymentIdEmploymentAgreementPreviewData, - ThrowOnError - >, +export const postV1RiskReserve = ( + options: Options, ) => - (options.client ?? client).get< - GetV1EmploymentsEmploymentIdEmploymentAgreementPreviewResponses, - GetV1EmploymentsEmploymentIdEmploymentAgreementPreviewErrors, + (options.client ?? client).post< + PostV1RiskReserveResponses, + PostV1RiskReserveErrors, ThrowOnError >({ - security: [ - { scheme: 'bearer', type: 'http' }, - { scheme: 'bearer', type: 'http' }, - ], - url: '/v1/employments/{employment_id}/employment-agreement/preview', + url: '/v1/risk-reserve', ...options, + headers: { + 'Content-Type': 'application/json', + ...options.headers, + }, }); /** - * Update administrative details + * Update address details * - * Updates employment's administrative details. + * Updates employment's address details. * * This endpoint requires and returns country-specific data. The exact required and returned fields will * vary depending on which country the employment is in. To see the list of parameters for each country, @@ -9585,24 +8488,20 @@ export const getV1EmploymentsEmploymentIdEmploymentAgreementPreview = < * | Manage employments (`employments`) | - | Manage employments (`employment:write`) | * */ -export const putV2EmploymentsEmploymentIdAdministrativeDetails = < +export const putV2EmploymentsEmploymentIdAddressDetails = < ThrowOnError extends boolean = false, >( options: Options< - PutV2EmploymentsEmploymentIdAdministrativeDetailsData, + PutV2EmploymentsEmploymentIdAddressDetailsData, ThrowOnError >, ) => (options.client ?? client).put< - PutV2EmploymentsEmploymentIdAdministrativeDetailsResponses, - PutV2EmploymentsEmploymentIdAdministrativeDetailsErrors, + PutV2EmploymentsEmploymentIdAddressDetailsResponses, + PutV2EmploymentsEmploymentIdAddressDetailsErrors, ThrowOnError >({ - security: [ - { scheme: 'bearer', type: 'http' }, - { scheme: 'bearer', type: 'http' }, - ], - url: '/v2/employments/{employment_id}/administrative-details', + url: '/v2/employments/{employment_id}/address_details', ...options, headers: { 'Content-Type': 'application/json', @@ -9611,7 +8510,36 @@ export const putV2EmploymentsEmploymentIdAdministrativeDetails = < }); /** - * Indexes all the documents for the employee + * Activate Global Payroll for a legal entity + * + * Enables the Global Payroll product on a legal entity so that GP employees can be created against it. + * + * Performs three idempotent steps: + * * Adds the Global Payroll product to the company. + * * Flips `global_payroll_enabled` on the legal entity's settings. + * * Ensures a Global Payroll pricing plan exists for the legal entity's country. + * + * This endpoint is only available in Sandbox, otherwise it will respond with a 404. + * + */ +export const postV1SandboxCompaniesCompanyIdLegalEntitiesLegalEntityIdActivateGlobalPayroll = + ( + options: Options< + PostV1SandboxCompaniesCompanyIdLegalEntitiesLegalEntityIdActivateGlobalPayrollData, + ThrowOnError + >, + ) => + (options.client ?? client).post< + PostV1SandboxCompaniesCompanyIdLegalEntitiesLegalEntityIdActivateGlobalPayrollResponses, + PostV1SandboxCompaniesCompanyIdLegalEntitiesLegalEntityIdActivateGlobalPayrollErrors, + ThrowOnError + >({ + url: '/v1/sandbox/companies/{company_id}/legal-entities/{legal_entity_id}/activate-global-payroll', + ...options, + }); + +/** + * Return a base64 encoded version of the contract document * * ## Scopes * @@ -9620,146 +8548,152 @@ export const putV2EmploymentsEmploymentIdAdministrativeDetails = < * | Manage employment documents (`employment_documents`) | View documents (`document:read`) | Manage documents (`document:write`) | * */ -export const getV1EmployeeDocuments = ( - options?: Options, +export const getV1ContractorsEmploymentsEmploymentIdContractDocumentsId = < + ThrowOnError extends boolean = false, +>( + options: Options< + GetV1ContractorsEmploymentsEmploymentIdContractDocumentsIdData, + ThrowOnError + >, ) => - (options?.client ?? client).get< - GetV1EmployeeDocumentsResponses, - GetV1EmployeeDocumentsErrors, + (options.client ?? client).get< + GetV1ContractorsEmploymentsEmploymentIdContractDocumentsIdResponses, + GetV1ContractorsEmploymentsEmploymentIdContractDocumentsIdErrors, ThrowOnError >({ - security: [{ scheme: 'bearer', type: 'http' }], - url: '/v1/employee/documents', + url: '/v1/contractors/employments/{employment_id}/contract-documents/{id}', ...options, }); /** - * Upload employee file + * Create a contractor timesheet * - * Uploads a file owned by the authenticated employee, for example - * identity documents or tax forms. + * Creates a timesheet on behalf of a contractor employment. + * + * The submitted hours are immediately available to the contractor in the Remote UI for + * self-serve invoice creation (Invoices → Create invoice → "Use Time Tracking"). + * + * This endpoint is restricted to contractor employments. Calls against EOR or Global Payroll + * employments are rejected with `422`. * * * ## Scopes * * | Category | Read only Scope | Write only Scope (read access implicit) | * |---|---|---| - * | Manage employment documents (`employment_documents`) | - | Manage documents (`document:write`) | + * | Manage timeoffs (`time_and_attendance`) | - | Manage timesheets (`timesheet:write`) | * */ -export const postV1EmployeeDocuments = ( - options: Options, +export const postV1ContractorsEmploymentsEmploymentIdTimesheets = < + ThrowOnError extends boolean = false, +>( + options: Options< + PostV1ContractorsEmploymentsEmploymentIdTimesheetsData, + ThrowOnError + >, ) => (options.client ?? client).post< - PostV1EmployeeDocumentsResponses, - PostV1EmployeeDocumentsErrors, + PostV1ContractorsEmploymentsEmploymentIdTimesheetsResponses, + PostV1ContractorsEmploymentsEmploymentIdTimesheetsErrors, ThrowOnError >({ - ...formDataBodySerializer, - security: [{ scheme: 'bearer', type: 'http' }], - url: '/v1/employee/documents', + url: '/v1/contractors/employments/{employment_id}/timesheets', ...options, headers: { - 'Content-Type': null, + 'Content-Type': 'application/json', ...options.headers, }, }); /** - * Approve a time off cancellation request + * Create a contractor of record (COR) termination request * - * Approve a time off cancellation request. - * In order to approve a time off cancellation request, the timeoff status must be `cancel_requested`. + * Initiates a termination request for a Contractor of Record employment. + * When a termination request is sent, a stop work order is issued and the contractor remains active until a final invoice is paid or waived. + * Currently, only Contractor of Record employments can be terminated. * * * ## Scopes * * | Category | Read only Scope | Write only Scope (read access implicit) | * |---|---|---| - * | Manage timeoffs (`time_and_attendance`) | - | Manage timeoffs (`timeoff:write`) | + * | Manage employments (`employments`) | - | Manage employments (`employment:write`) | * */ -export const postV1TimeoffTimeoffIdCancelRequestApprove = < +export const postV1ContractorsEmploymentsEmploymentIdCorTerminationRequests = < ThrowOnError extends boolean = false, >( options: Options< - PostV1TimeoffTimeoffIdCancelRequestApproveData, + PostV1ContractorsEmploymentsEmploymentIdCorTerminationRequestsData, ThrowOnError >, ) => (options.client ?? client).post< - PostV1TimeoffTimeoffIdCancelRequestApproveResponses, - PostV1TimeoffTimeoffIdCancelRequestApproveErrors, + PostV1ContractorsEmploymentsEmploymentIdCorTerminationRequestsResponses, + PostV1ContractorsEmploymentsEmploymentIdCorTerminationRequestsErrors, ThrowOnError >({ - security: [ - { scheme: 'bearer', type: 'http' }, - { scheme: 'bearer', type: 'http' }, - ], - url: '/v1/timeoff/{timeoff_id}/cancel-request/approve', + url: '/v1/contractors/employments/{employment_id}/cor-termination-requests', ...options, }); /** - * Verify Employment Identity - * - * Endpoint to confirms the employment profile is from the actual employee + * List approved payslip files for the authenticated employee * + * Returns a paginated list of payslip files belonging to the current employee. * * ## Scopes * * | Category | Read only Scope | Write only Scope (read access implicit) | * |---|---|---| - * | Manage employment documents (`employment_documents`) | - | Manage identity verification (`identity_verification:write`) | + * | Manage employment documents (`employment_documents`) | View payslips (`payslip:read`) | - | * */ -export const postV1IdentityVerificationEmploymentIdVerify = < - ThrowOnError extends boolean = false, ->( - options: Options< - PostV1IdentityVerificationEmploymentIdVerifyData, - ThrowOnError - >, +export const getV1EmployeePayslips = ( + options?: Options, ) => - (options.client ?? client).post< - PostV1IdentityVerificationEmploymentIdVerifyResponses, - PostV1IdentityVerificationEmploymentIdVerifyErrors, + (options?.client ?? client).get< + GetV1EmployeePayslipsResponses, + GetV1EmployeePayslipsErrors, ThrowOnError - >({ - security: [ - { scheme: 'bearer', type: 'http' }, - { scheme: 'bearer', type: 'http' }, - ], - url: '/v1/identity-verification/{employment_id}/verify', - ...options, - }); + >({ url: '/v1/employee/payslips', ...options }); /** - * Download a billing document PDF + * Submit employee state taxes + * + * Submits the authenticated employee's US state tax withholding answers for a + * single jurisdiction (e.g. `NY`). + * + * Available for US Global Payroll employees once they reach the post-enrollment + * state, at which point the per-jurisdiction state tax task exists. + * + * This endpoint requires country/jurisdiction-specific data. Query the + * [Show form schema](#tag/Countries/operation/get_show_form_country) endpoint with `global_payroll_state_taxes` + * as the form name to discover the schema for a given country. + * * - * Downloads a billing document PDF * * ## Scopes * * | Category | Read only Scope | Write only Scope (read access implicit) | * |---|---|---| - * | Manage invoices (`invoices`) | View invoices (`invoices:read`) | Manage invoices (`invoices:write`) | + * | Manage employments (`employments`) | - | Manage personal details (`personal_detail:write`) | * */ -export const getV1BillingDocumentsBillingDocumentIdPdf = < +export const putV1EmployeeStateTaxesJurisdiction = < ThrowOnError extends boolean = false, >( - options: Options, + options: Options, ) => - (options.client ?? client).get< - GetV1BillingDocumentsBillingDocumentIdPdfResponses, - GetV1BillingDocumentsBillingDocumentIdPdfErrors, + (options.client ?? client).put< + PutV1EmployeeStateTaxesJurisdictionResponses, + PutV1EmployeeStateTaxesJurisdictionErrors, ThrowOnError >({ - security: [ - { scheme: 'bearer', type: 'http' }, - { scheme: 'bearer', type: 'http' }, - ], - url: '/v1/billing-documents/{billing_document_id}/pdf', + url: '/v1/employee/state-taxes/{jurisdiction}', ...options, + headers: { + 'Content-Type': 'application/json', + ...options.headers, + }, }); diff --git a/src/client/types.gen.ts b/src/client/types.gen.ts index 9f0b92a92..9e36a06e7 100644 --- a/src/client/types.gen.ts +++ b/src/client/types.gen.ts @@ -1,10 +1,7 @@ // This file is auto-generated by @hey-api/openapi-ts export type ClientOptions = { - baseUrl: - | 'https://gateway.remote.com/' - | 'https://gateway.remote-sandbox.com/' - | (string & {}); + baseUrl: string; }; /** @@ -541,13 +538,6 @@ export type SignatoryType = | 'external' | 'unknown'; -/** - * EngagedByLegalEntityID - * - * The unique identifier (UUID) of the legal entity that engaged this employment. - */ -export type EngagedByLegalEntityId = string | null; - /** * SignatoryStatus * @@ -1002,12 +992,6 @@ export type Employment = { work_address_details: { [key: string]: unknown; }; - /** - * BillToLegalEntityID - * - * The unique identifier (UUID) of the legal entity that is billed for this employment. - */ - bill_to_legal_entity_id?: string | null; /** * The employee's work email address, typically provided by the employer. */ @@ -1078,12 +1062,6 @@ export type Employment = { * The unique identifier (UUID) of the currently active contract for this employment. */ active_contract_id?: string; - /** - * EngagedByLegalEntityID - * - * The unique identifier (UUID) of the legal entity that engaged this employment. - */ - engaged_by_legal_entity_id?: string | null; /** * Billing address information. Its properties may vary depending on the country. */ @@ -1140,51 +1118,6 @@ export type CreateRiskReserveParams = { employment_slug: string; }; -/** - * PreOnboardingDocumentRequirement - * - * A pre-onboarding document requirement that must be fulfilled before an employee can be onboarded. - */ -export type PreOnboardingDocumentRequirement = { - /** - * The requirement that must be fulfilled before this one becomes available (if any). - */ - depends_on_requirement?: PreOnboardingDocumentRequirement | null; - /** - * Human-readable description of the requirement. - */ - description: string; - /** - * Timestamp when the customer acknowledged the constraints (if any). - */ - document_constraints_ack_at?: string | null; - /** - * Whether the employment data is frozen because a document for this requirement exists. - */ - freeze_employment_data?: boolean | null; - /** - * Human-readable name of the requirement. - */ - name: string; - /** - * Whether the customer must acknowledge the hiring constraints of the country before creating a document. - */ - needs_constraints_ack: boolean; - /** - * Email address to contact for help with redlining when supported. - */ - redlining_help_email?: string | null; - slug: UuidSlug; - /** - * Current status of this requirement for the given employment. - */ - status?: 'blocked' | 'awaiting_signatures' | 'finished' | 'revised'; - /** - * Whether the requirement supports redlining (collaborative editing) of the generated document. - */ - supports_redlining: boolean; -}; - /** * HolidaysResponse * @@ -1371,6 +1304,19 @@ export type Step = { type: string; }; +/** + * CreatePreOnboardingAcknowledgementResponse + * + * Returns the slug of the recorded pre-onboarding acknowledgement. + */ +export type CreatePreOnboardingAcknowledgementResponse = { + data: { + pre_onboarding_acknowledgement: { + id: UuidSlug; + }; + }; +}; + /** * CostCalculatorEstimatePDFResponse */ @@ -2298,7 +2244,7 @@ export type ValidateResignationRequestParams = /** * LimitedDaysandHoursResponse * - * Includes requested timeoffs (not approved) in the past or in the future. + * Includes all upcoming requested time off. */ export type LimitedDaysandHoursResponse = { days: number; @@ -2919,6 +2865,17 @@ export type ContractorInvoiceItem = { type: ContractorInvoiceItemType; }; +/** + * PayslipResponse + * + * A single payslip. + */ +export type PayslipResponse = { + data: { + payslip: Payslip; + }; +}; + /** * CorTerminationRequestCreatedResponse */ @@ -3561,7 +3518,7 @@ export type CreateWebhookCallbackParams = { | 'employment_contract.adjusted_during_onboarding' | 'employment.account.updated' | 'employment.administrative_details.updated' - | 'employment_basic_information.updated' + | 'employment.basic_information.updated' | 'employment.contractor_management_plan.updated' | 'employment.contractor_of_record_termination.cancelled' | 'employment.contractor_of_record_termination.executed' @@ -3846,29 +3803,6 @@ export type BenefitRenewalRequestsBenefitRenewalRequestResponse = { */ export type EmploymentTermType = 'fixed' | 'indefinite'; -/** - * ListCompanyCostCenterAllocationsResponse - * - * Response schema listing many employments - */ -export type ListCompanyCostCenterAllocationsResponse = { - data?: { - /** - * The current page among all of the total_pages - */ - current_page?: number; - employments?: Array; - /** - * The total number of records in the result - */ - total_count?: number; - /** - * The total number of pages the user can go through - */ - total_pages?: number; - }; -}; - /** * ReplayWebhookEventsParams * @@ -4256,37 +4190,6 @@ export type TimeoffTypeResponse = { name: TimeoffType; }; -/** - * CostCenterAllocation - * - * A cost center allocation for an employment, including the allocated percentage and effective period. - */ -export type CostCenterAllocation = { - cost_center: CostCenter; - /** - * Date the allocation becomes effective. - */ - effective_from: string | null; - /** - * Date the allocation stops being effective. - */ - effective_to: string | null; - /** - * UuidSlug - * - * Unique identifier of the cost center allocation. - */ - id: string; - /** - * Percentage of the employment's cost allocated to this cost center (0-100). - */ - percentage: number; - /** - * Allocation status, derived from the effective period. - */ - status: 'active' | 'scheduled' | 'expired'; -}; - export type MaybeAccountsLoginSyncedWith = AccountsLoginSyncedWith | null; /** @@ -4526,7 +4429,7 @@ export type WebhookTriggerEmploymentParams = { | 'employment_contract.adjusted_during_onboarding' | 'employment.account.updated' | 'employment.administrative_details.updated' - | 'employment_basic_information.updated' + | 'employment.basic_information.updated' | 'employment.contractor_management_plan.updated' | 'employment.contractor_of_record_termination.cancelled' | 'employment.contractor_of_record_termination.executed' @@ -6150,6 +6053,15 @@ export type ApprovedTravelLetter = { status: 'approved_by_manager'; }; +/** + * IndexPreOnboardingRequirementsResponse + * + * List of pre-onboarding requirements for an employment. + */ +export type IndexPreOnboardingRequirementsResponse = { + data: Array; +}; + /** * DeclineTimeoffParams */ @@ -8736,6 +8648,47 @@ export type UnifiedEmploymentBenefitOffer = { benefit_tier: UnifiedEmploymentBenefitTier | null; }; +/** + * PreOnboardingRequirement + * + * A pre-onboarding requirement (document or acknowledgement) that must be fulfilled before an employee can be onboarded. + */ +export type PreOnboardingRequirement = { + /** + * The requirement that must be fulfilled before this one becomes available (if any). + */ + depends_on_requirement?: PreOnboardingRequirement | null; + /** + * Human-readable description; rich HTML for acknowledgement requirements. + */ + description: string; + /** + * Whether the employment data is frozen because this requirement is finished. + */ + freeze_employment_data?: boolean | null; + /** + * Human-readable name of the requirement. + */ + name: string; + /** + * Email address to contact for help with redlining (document requirements only). + */ + redlining_help_email?: string | null; + slug: UuidSlug; + /** + * Current status of this requirement for the given employment. + */ + status?: 'blocked' | 'awaiting' | 'finished' | 'revised'; + /** + * Whether the requirement supports redlining (document requirements only). + */ + supports_redlining?: boolean | null; + /** + * The requirement type. + */ + type: 'document' | 'acknowledgement'; +}; + /** * TimesheetStatus * @@ -9066,15 +9019,6 @@ export type IdentityCompany = { name: string; }; -/** - * IndexPreOnboardingDocumentRequirementsResponse - * - * List of pre-onboarding document requirements for an employment. - */ -export type IndexPreOnboardingDocumentRequirementsResponse = { - data: Array; -}; - /** * CreateGeneralCustomFieldDefinitionParams * @@ -9249,7 +9193,7 @@ export type WebhookCallback = { | 'employment_contract.adjusted_during_onboarding' | 'employment.account.updated' | 'employment.administrative_details.updated' - | 'employment_basic_information.updated' + | 'employment.basic_information.updated' | 'employment.contractor_management_plan.updated' | 'employment.contractor_of_record_termination.cancelled' | 'employment.contractor_of_record_termination.executed' @@ -10301,13 +10245,6 @@ export type CreateProbationCompletionLetterParams = { employment_id: string; }; -/** - * BillToLegalEntityID - * - * The unique identifier (UUID) of the legal entity that is billed for this employment. - */ -export type BillToLegalEntityId = string | null; - /** * CompanyFormResponse * @@ -10537,17 +10474,6 @@ export type BenefitTier = { providers: Array; }; -/** - * ListCostCenterAllocationsResponse - * - * Response listing the cost center allocations for an employment. - */ -export type ListCostCenterAllocationsResponse = { - data: { - cost_center_allocations: Array; - }; -}; - /** * ScheduleID * @@ -10934,30 +10860,6 @@ export type CreateProbationExtensionParams = { was_employee_informed: boolean; }; -/** - * EmploymentWithCostCenterAllocations - * - * An employment under the company with its cost center allocations. - */ -export type EmploymentWithCostCenterAllocations = { - /** - * Unique identifier of the legal entity this employment is billed to. - */ - bill_to_legal_entity_id?: string | null; - /** - * The cost center allocations for this employment. - */ - cost_center_allocations: Array; - /** - * Unique identifier of the employment. - */ - employment_id: string; - /** - * Unique identifier of the legal entity that employs this employment. - */ - engaged_by_legal_entity_id?: string | null; -}; - /** * ListIncentivesResponse * @@ -11074,7 +10976,7 @@ export type UpdateWebhookCallbackParams = { | 'employment_contract.adjusted_during_onboarding' | 'employment.account.updated' | 'employment.administrative_details.updated' - | 'employment_basic_information.updated' + | 'employment.basic_information.updated' | 'employment.contractor_management_plan.updated' | 'employment.contractor_of_record_termination.cancelled' | 'employment.contractor_of_record_termination.executed' @@ -11548,26 +11450,6 @@ export type MinimalContractAmendment = { submitted_at: string; }; -/** - * CostCenter - * - * The cost center an employment is allocated to. - */ -export type CostCenter = { - /** - * Cost center code. Typically used as the join key to an external general ledger. - */ - code: string | null; - /** - * Cost center name. - */ - name: string; - /** - * Unique identifier of the cost center. - */ - slug: string; -}; - /** * SalaryDecreaseDetails * @@ -11853,10 +11735,6 @@ export type EmploymentCreateParams = { basic_information: { [key: string]: unknown; }; - /** - * Id of the legal entity that should be billed for the employment. If omitted, falls back to `engaged_by_legal_entity_id`. For EOR and Contractor employments this may differ from `engaged_by_legal_entity_id`. For Global Payroll and Direct (HRIS) employments it must match `engaged_by_legal_entity_id`. - */ - bill_to_legal_entity_id?: string; /** * This optional field is deprecated. */ @@ -11866,15 +11744,9 @@ export type EmploymentCreateParams = { */ country_code: string; /** - * Deprecated alias for `engaged_by_legal_entity_id`. Use `engaged_by_legal_entity_id` instead. - * - * @deprecated + * This field is required to create a global payroll employee. */ engaged_by_entity_slug?: string; - /** - * Id of the legal entity that engages the employee or contractor. Required for Global Payroll employees. For EOR and Contractor employments this may differ from `bill_to_legal_entity_id`. For Global Payroll and Direct (HRIS) employments it must match `bill_to_legal_entity_id`. - */ - engaged_by_legal_entity_id?: string; /** * A unique reference code for the employment record in a non-Remote system. This optional field links to external data sources. If not provided, it defaults to `null`. While uniqueness is recommended, it is not strictly enforced within Remote's system. */ @@ -12603,22 +12475,6 @@ export type BillingDocumentAmountItem = { */ export type EmploymentId = string; -/** - * FindOrCreatePreOnboardingDocumentParams - * - * Parameters to find an existing unsigned pre-onboarding document or create a new one. - */ -export type FindOrCreatePreOnboardingDocumentParams = { - /** - * Timestamp when the customer acknowledged the hiring constraints. Required when the requirement has `needs_constraints_ack: true`. - */ - constraints_ack_at?: string | null; - /** - * Slug of the pre-onboarding document requirement to fulfil. Obtain this from the `GET .../pre-onboarding-document-requirements` endpoint. - */ - pre_onboarding_document_requirement_slug: UuidSlug; -}; - /** * ContractAmendmentResponse * @@ -12676,37 +12532,19 @@ export type ContractorInvoiceScheduleCreateResponseSuccess = { start_date: string; }; -export type GetV1OffboardingsData = { +export type GetV1CompaniesCompanyIdActionsData = { body?: never; - path?: never; - query?: { - /** - * Filter by Employment ID - */ - employment_id?: string; - /** - * Filter by offboarding type - */ - type?: string; - /** - * By default, the results do not include confidential termination requests. - * Send `include_confidential=true` to include confidential requests in the response. - * - */ - include_confidential?: string; - /** - * Starts fetching records after the given page - */ - page?: number; + path: { /** - * Change the amount of records returned per page, defaults to 20, limited to 100 + * Company ID */ - page_size?: number; + company_id: string; }; - url: '/v1/offboardings'; + query?: never; + url: '/v1/companies/{company_id}/actions'; }; -export type GetV1OffboardingsErrors = { +export type GetV1CompaniesCompanyIdActionsErrors = { /** * Bad Request */ @@ -12729,30 +12567,35 @@ export type GetV1OffboardingsErrors = { 429: TooManyRequestsResponse; }; -export type GetV1OffboardingsError = - GetV1OffboardingsErrors[keyof GetV1OffboardingsErrors]; +export type GetV1CompaniesCompanyIdActionsError = + GetV1CompaniesCompanyIdActionsErrors[keyof GetV1CompaniesCompanyIdActionsErrors]; -export type GetV1OffboardingsResponses = { +export type GetV1CompaniesCompanyIdActionsResponses = { /** * Success */ - 200: ListOffboardingResponse; + 200: CompanyActionsResponse; }; -export type GetV1OffboardingsResponse = - GetV1OffboardingsResponses[keyof GetV1OffboardingsResponses]; +export type GetV1CompaniesCompanyIdActionsResponse = + GetV1CompaniesCompanyIdActionsResponses[keyof GetV1CompaniesCompanyIdActionsResponses]; -export type PostV1OffboardingsData = { +export type PutV2EmploymentsEmploymentIdAdministrativeDetailsData = { /** - * Offboarding + * Employment administrative details params */ - body?: CreateOffboardingParams; - path?: never; + body?: EmploymentAdministrativeDetailsParams; + path: { + /** + * Employment ID + */ + employment_id: string; + }; query?: never; - url: '/v1/offboardings'; + url: '/v2/employments/{employment_id}/administrative_details'; }; -export type PostV1OffboardingsErrors = { +export type PutV2EmploymentsEmploymentIdAdministrativeDetailsErrors = { /** * Bad Request */ @@ -12761,76 +12604,62 @@ export type PostV1OffboardingsErrors = { * Unauthorized */ 401: UnauthorizedResponse; + /** + * Forbidden + */ + 403: ForbiddenResponse; /** * Not Found */ 404: NotFoundResponse; + /** + * Conflict + */ + 409: ConflictResponse; /** * Unprocessable Entity */ 422: UnprocessableEntityResponse; /** - * Too many requests + * Unprocessable Entity */ 429: TooManyRequestsResponse; - /** - * Internal Server Error - */ - 500: RequestError; }; -export type PostV1OffboardingsError = - PostV1OffboardingsErrors[keyof PostV1OffboardingsErrors]; +export type PutV2EmploymentsEmploymentIdAdministrativeDetailsError = + PutV2EmploymentsEmploymentIdAdministrativeDetailsErrors[keyof PutV2EmploymentsEmploymentIdAdministrativeDetailsErrors]; -export type PostV1OffboardingsResponses = { +export type PutV2EmploymentsEmploymentIdAdministrativeDetailsResponses = { /** * Success */ - 201: OffboardingResponse; + 200: EmploymentDetailsOnlyResponse; }; -export type PostV1OffboardingsResponse = - PostV1OffboardingsResponses[keyof PostV1OffboardingsResponses]; +export type PutV2EmploymentsEmploymentIdAdministrativeDetailsResponse = + PutV2EmploymentsEmploymentIdAdministrativeDetailsResponses[keyof PutV2EmploymentsEmploymentIdAdministrativeDetailsResponses]; -export type GetV2OffboardingsData = { +export type GetV1EmploymentsEmploymentIdEngagementAgreementDetailsData = { body?: never; - path?: never; - query?: { - /** - * Filter by Employment ID - */ - employment_id?: string; - /** - * Filter by offboarding type. Only `termination` and `resignation` offboardings are supported. - */ - type?: 'termination' | 'resignation'; - /** - * By default, the results do not include confidential termination requests. - * Send `include_confidential=true` to include confidential requests in the response. - * - */ - include_confidential?: boolean; - /** - * Starts fetching records after the given page - */ - page?: number; + path: { /** - * Change the amount of records returned per page, defaults to 20, limited to 100 + * Employment ID */ - page_size?: number; + employment_id: string; }; - url: '/v2/offboardings'; + query?: never; + url: '/v1/employments/{employment_id}/engagement-agreement-details'; }; -export type GetV2OffboardingsErrors = { +export type GetV1EmploymentsEmploymentIdEngagementAgreementDetailsErrors = { /** * Bad Request */ 400: BadRequestResponse; /** - * Unauthorized + * Forbidden */ - 401: UnauthorizedResponse; + 403: ForbiddenResponse; /** * Not Found */ @@ -12840,53 +12669,44 @@ export type GetV2OffboardingsErrors = { */ 422: UnprocessableEntityResponse; /** - * Too many requests + * Unprocessable Entity */ 429: TooManyRequestsResponse; }; -export type GetV2OffboardingsError = - GetV2OffboardingsErrors[keyof GetV2OffboardingsErrors]; +export type GetV1EmploymentsEmploymentIdEngagementAgreementDetailsError = + GetV1EmploymentsEmploymentIdEngagementAgreementDetailsErrors[keyof GetV1EmploymentsEmploymentIdEngagementAgreementDetailsErrors]; -export type GetV2OffboardingsResponses = { +export type GetV1EmploymentsEmploymentIdEngagementAgreementDetailsResponses = { /** * Success */ - 200: V2ListOffboardingResponse; + 200: EmploymentEngagementAgreementDetailsResponse; }; -export type GetV2OffboardingsResponse = - GetV2OffboardingsResponses[keyof GetV2OffboardingsResponses]; +export type GetV1EmploymentsEmploymentIdEngagementAgreementDetailsResponse = + GetV1EmploymentsEmploymentIdEngagementAgreementDetailsResponses[keyof GetV1EmploymentsEmploymentIdEngagementAgreementDetailsResponses]; -export type PutV2EmploymentsEmploymentIdPricingPlanDetailsData = { +export type PostV1EmploymentsEmploymentIdEngagementAgreementDetailsData = { /** - * Employment pricing plan details params + * Employment engagement agreement details params */ - body?: EmploymentPricingPlanDetailsParams; + body?: EmploymentEngagementAgreementDetailsParams; path: { /** * Employment ID */ employment_id: string; }; - query?: { - /** - * Version of the pricing_plan_details form schema - */ - pricing_plan_details_json_schema_version?: number | 'latest'; - }; - url: '/v2/employments/{employment_id}/pricing-plan-details'; + query?: never; + url: '/v1/employments/{employment_id}/engagement-agreement-details'; }; -export type PutV2EmploymentsEmploymentIdPricingPlanDetailsErrors = { +export type PostV1EmploymentsEmploymentIdEngagementAgreementDetailsErrors = { /** * Bad Request */ 400: BadRequestResponse; - /** - * Unauthorized - */ - 401: UnauthorizedResponse; /** * Forbidden */ @@ -12909,32 +12729,30 @@ export type PutV2EmploymentsEmploymentIdPricingPlanDetailsErrors = { 429: TooManyRequestsResponse; }; -export type PutV2EmploymentsEmploymentIdPricingPlanDetailsError = - PutV2EmploymentsEmploymentIdPricingPlanDetailsErrors[keyof PutV2EmploymentsEmploymentIdPricingPlanDetailsErrors]; +export type PostV1EmploymentsEmploymentIdEngagementAgreementDetailsError = + PostV1EmploymentsEmploymentIdEngagementAgreementDetailsErrors[keyof PostV1EmploymentsEmploymentIdEngagementAgreementDetailsErrors]; -export type PutV2EmploymentsEmploymentIdPricingPlanDetailsResponses = { +export type PostV1EmploymentsEmploymentIdEngagementAgreementDetailsResponses = { /** * Success */ - 200: EmploymentDetailsOnlyResponse; + 200: SuccessResponse; }; -export type PutV2EmploymentsEmploymentIdPricingPlanDetailsResponse = - PutV2EmploymentsEmploymentIdPricingPlanDetailsResponses[keyof PutV2EmploymentsEmploymentIdPricingPlanDetailsResponses]; +export type PostV1EmploymentsEmploymentIdEngagementAgreementDetailsResponse = + PostV1EmploymentsEmploymentIdEngagementAgreementDetailsResponses[keyof PostV1EmploymentsEmploymentIdEngagementAgreementDetailsResponses]; -export type GetV1TimesheetsIdData = { - body?: never; - path: { - /** - * Timesheet ID - */ - id: string; - }; +export type PostV1CurrencyConverterEffective2Data = { + /** + * Convert currency parameters + */ + body: ConvertCurrencyParams; + path?: never; query?: never; - url: '/v1/timesheets/{id}'; + url: '/v1/currency-converter'; }; -export type GetV1TimesheetsIdErrors = { +export type PostV1CurrencyConverterEffective2Errors = { /** * Unauthorized */ @@ -12949,42 +12767,46 @@ export type GetV1TimesheetsIdErrors = { 422: UnprocessableEntityResponse; }; -export type GetV1TimesheetsIdError = - GetV1TimesheetsIdErrors[keyof GetV1TimesheetsIdErrors]; +export type PostV1CurrencyConverterEffective2Error = + PostV1CurrencyConverterEffective2Errors[keyof PostV1CurrencyConverterEffective2Errors]; -export type GetV1TimesheetsIdResponses = { +export type PostV1CurrencyConverterEffective2Responses = { /** * Success */ - 200: TimesheetResponse; + 200: ConvertCurrencyResponse; }; -export type GetV1TimesheetsIdResponse = - GetV1TimesheetsIdResponses[keyof GetV1TimesheetsIdResponses]; +export type PostV1CurrencyConverterEffective2Response = + PostV1CurrencyConverterEffective2Responses[keyof PostV1CurrencyConverterEffective2Responses]; -export type PostV1CancelOnboardingEmploymentIdData = { - body?: never; - path: { - /** - * Employment ID - */ - employment_id: string; - }; - query?: { - /** - * Whether the request should be performed async - * - */ - async?: boolean; - }; - url: '/v1/cancel-onboarding/{employment_id}'; +export type PutV1EmployeeFederalTaxesData = { + /** + * Employee federal taxes params + */ + body?: EmploymentFederalTaxesParams; + path?: never; + query?: never; + url: '/v1/employee/federal-taxes'; }; -export type PostV1CancelOnboardingEmploymentIdErrors = { +export type PutV1EmployeeFederalTaxesErrors = { /** * Bad Request */ 400: BadRequestResponse; + /** + * Unauthorized + */ + 401: UnauthorizedResponse; + /** + * Forbidden + */ + 403: ForbiddenResponse; + /** + * Not Found + */ + 404: NotFoundResponse; /** * Unprocessable Entity */ @@ -12995,53 +12817,73 @@ export type PostV1CancelOnboardingEmploymentIdErrors = { 429: TooManyRequestsResponse; }; -export type PostV1CancelOnboardingEmploymentIdError = - PostV1CancelOnboardingEmploymentIdErrors[keyof PostV1CancelOnboardingEmploymentIdErrors]; +export type PutV1EmployeeFederalTaxesError = + PutV1EmployeeFederalTaxesErrors[keyof PutV1EmployeeFederalTaxesErrors]; -export type PostV1CancelOnboardingEmploymentIdResponses = { +export type PutV1EmployeeFederalTaxesResponses = { /** * Success */ 200: SuccessResponse; }; -export type PostV1CancelOnboardingEmploymentIdResponse = - PostV1CancelOnboardingEmploymentIdResponses[keyof PostV1CancelOnboardingEmploymentIdResponses]; +export type PutV1EmployeeFederalTaxesResponse = + PutV1EmployeeFederalTaxesResponses[keyof PutV1EmployeeFederalTaxesResponses]; -export type GetV1ContractAmendmentsSchemaData = { - body?: never; - headers: { - /** - * Requires a Company-scoped access token obtained through the Authorization Code flow or the Refresh Token flow. - * - * The refresh token needs to have been obtained through the Authorization Code flow. - * - */ - Authorization: string; +export type GetV1ContractorsEmploymentsEmploymentIdContractorSubscriptionsData = + { + body?: never; + path: { + /** + * Employment ID + */ + employment_id: string; + }; + query?: never; + url: '/v1/contractors/employments/{employment_id}/contractor-subscriptions'; }; - path?: never; - query: { + +export type GetV1ContractorsEmploymentsEmploymentIdContractorSubscriptionsErrors = + { /** - * The ID of the employment concerned by the contract amendment request. + * Unauthorized */ - employment_id: string; + 401: UnauthorizedResponse; /** - * Country code according to ISO 3-digit alphabetic codes. + * Forbidden */ - country_code: string; + 403: ForbiddenResponse; /** - * Name of the desired form + * Not Found */ - form?: 'contract_amendment'; + 404: NotFoundResponse; + }; + +export type GetV1ContractorsEmploymentsEmploymentIdContractorSubscriptionsError = + GetV1ContractorsEmploymentsEmploymentIdContractorSubscriptionsErrors[keyof GetV1ContractorsEmploymentsEmploymentIdContractorSubscriptionsErrors]; + +export type GetV1ContractorsEmploymentsEmploymentIdContractorSubscriptionsResponses = + { /** - * Version of the form schema + * Success */ - json_schema_version?: number | 'latest'; + 200: ContractorSubscriptionSummariesResponse; }; - url: '/v1/contract-amendments/schema'; + +export type GetV1ContractorsEmploymentsEmploymentIdContractorSubscriptionsResponse = + GetV1ContractorsEmploymentsEmploymentIdContractorSubscriptionsResponses[keyof GetV1ContractorsEmploymentsEmploymentIdContractorSubscriptionsResponses]; + +export type PostV1CurrencyConverterRawData = { + /** + * Convert currency parameters + */ + body: ConvertCurrencyParams; + path?: never; + query?: never; + url: '/v1/currency-converter/raw'; }; -export type GetV1ContractAmendmentsSchemaErrors = { +export type PostV1CurrencyConverterRawErrors = { /** * Unauthorized */ @@ -13056,78 +12898,112 @@ export type GetV1ContractAmendmentsSchemaErrors = { 422: UnprocessableEntityResponse; }; -export type GetV1ContractAmendmentsSchemaError = - GetV1ContractAmendmentsSchemaErrors[keyof GetV1ContractAmendmentsSchemaErrors]; +export type PostV1CurrencyConverterRawError = + PostV1CurrencyConverterRawErrors[keyof PostV1CurrencyConverterRawErrors]; -export type GetV1ContractAmendmentsSchemaResponses = { +export type PostV1CurrencyConverterRawResponses = { /** * Success */ - 200: ContractAmendmentFormResponse; + 200: ConvertCurrencyResponse; }; -export type GetV1ContractAmendmentsSchemaResponse = - GetV1ContractAmendmentsSchemaResponses[keyof GetV1ContractAmendmentsSchemaResponses]; +export type PostV1CurrencyConverterRawResponse = + PostV1CurrencyConverterRawResponses[keyof PostV1CurrencyConverterRawResponses]; -export type PostV1PayItemsBulkData = { - /** - * Pay Items - */ - body: BulkCreatePayItemsParams; +export type GetV1IncentivesData = { + body?: never; + headers: { + /** + * Requires a Company-scoped access token obtained through the Authorization Code flow or the Refresh Token flow. + * + * The refresh token needs to have been obtained through the Authorization Code flow. + * + */ + Authorization: string; + }; path?: never; - query?: never; - url: '/v1/pay-items/bulk'; + query?: { + /** + * Filter by Employment ID + */ + employment_id?: string; + /** + * Filter by Incentive status + */ + status?: string; + /** + * Filter by Recurring Incentive id + */ + recurring_incentive_id?: string; + /** + * Starts fetching records after the given page + */ + page?: number; + /** + * Change the amount of records returned per page, defaults to 20, limited to 100 + */ + page_size?: number; + }; + url: '/v1/incentives'; }; -export type PostV1PayItemsBulkErrors = { +export type GetV1IncentivesErrors = { /** * Bad Request */ 400: BadRequestResponse; /** - * Forbidden + * Unauthorized */ - 403: ForbiddenResponse; + 401: UnauthorizedResponse; /** - * Conflict + * Not Found */ - 409: ConflictResponse; + 404: NotFoundResponse; /** * Unprocessable Entity */ 422: UnprocessableEntityResponse; /** - * Unprocessable Entity + * Too many requests */ 429: TooManyRequestsResponse; }; -export type PostV1PayItemsBulkError = - PostV1PayItemsBulkErrors[keyof PostV1PayItemsBulkErrors]; +export type GetV1IncentivesError = + GetV1IncentivesErrors[keyof GetV1IncentivesErrors]; -export type PostV1PayItemsBulkResponses = { +export type GetV1IncentivesResponses = { /** * Success */ - 200: BulkCreatePayItemsResponse; + 200: ListIncentivesResponse; }; -export type PostV1PayItemsBulkResponse = - PostV1PayItemsBulkResponses[keyof PostV1PayItemsBulkResponses]; +export type GetV1IncentivesResponse = + GetV1IncentivesResponses[keyof GetV1IncentivesResponses]; -export type GetV2OffboardingsIdData = { - body?: never; - path: { +export type PostV1IncentivesData = { + /** + * Incentive + */ + body?: CreateOneTimeIncentiveParams; + headers: { /** - * Offboarding ID + * Requires a Company-scoped access token obtained through the Authorization Code flow or the Refresh Token flow. + * + * The refresh token needs to have been obtained through the Authorization Code flow. + * */ - id: string; + Authorization: string; }; + path?: never; query?: never; - url: '/v2/offboardings/{id}'; + url: '/v1/incentives'; }; -export type GetV2OffboardingsIdErrors = { +export type PostV1IncentivesErrors = { /** * Bad Request */ @@ -13150,56 +13026,83 @@ export type GetV2OffboardingsIdErrors = { 429: TooManyRequestsResponse; }; -export type GetV2OffboardingsIdError = - GetV2OffboardingsIdErrors[keyof GetV2OffboardingsIdErrors]; +export type PostV1IncentivesError = + PostV1IncentivesErrors[keyof PostV1IncentivesErrors]; -export type GetV2OffboardingsIdResponses = { +export type PostV1IncentivesResponses = { /** * Success */ - 200: V2OffboardingResponse; + 201: IncentiveResponse; }; -export type GetV2OffboardingsIdResponse = - GetV2OffboardingsIdResponses[keyof GetV2OffboardingsIdResponses]; +export type PostV1IncentivesResponse = + PostV1IncentivesResponses[keyof PostV1IncentivesResponses]; -export type PutV2EmploymentsEmploymentIdAddressDetailsData = { - /** - * Employment address details params - */ - body?: EmploymentAddressDetailsParams; - path: { +export type GetV1BenefitOffersData = { + body?: never; + headers: { /** - * Employment ID + * Requires a Company-scoped access token obtained through the Authorization Code flow or the Refresh Token flow. + * + * The refresh token needs to have been obtained through the Authorization Code flow. + * */ - employment_id: string; + Authorization: string; }; - query?: { + path?: never; + query?: never; + url: '/v1/benefit-offers'; +}; + +export type GetV1BenefitOffersErrors = { + /** + * Not Found + */ + 404: NotFoundResponse; +}; + +export type GetV1BenefitOffersError = + GetV1BenefitOffersErrors[keyof GetV1BenefitOffersErrors]; + +export type GetV1BenefitOffersResponses = { + /** + * Success + */ + 200: BenefitOfferByEmploymentResponse; +}; + +export type GetV1BenefitOffersResponse = + GetV1BenefitOffersResponses[keyof GetV1BenefitOffersResponses]; + +export type PostV1ReadyData = { + /** + * Employment slug + */ + body?: CompleteOnboarding; + headers: { /** - * Version of the address_details form schema + * Requires a Company-scoped access token obtained through the Authorization Code flow or the Refresh Token flow. + * + * The refresh token needs to have been obtained through the Authorization Code flow. + * */ - address_details_json_schema_version?: number | 'latest'; + Authorization: string; }; - url: '/v2/employments/{employment_id}/address-details'; + path?: never; + query?: never; + url: '/v1/ready'; }; -export type PutV2EmploymentsEmploymentIdAddressDetailsErrors = { +export type PostV1ReadyErrors = { /** * Bad Request */ 400: BadRequestResponse; - /** - * Unauthorized - */ - 401: UnauthorizedResponse; /** * Forbidden */ 403: ForbiddenResponse; - /** - * Not Found - */ - 404: NotFoundResponse; /** * Conflict */ @@ -13214,36 +13117,29 @@ export type PutV2EmploymentsEmploymentIdAddressDetailsErrors = { 429: TooManyRequestsResponse; }; -export type PutV2EmploymentsEmploymentIdAddressDetailsError = - PutV2EmploymentsEmploymentIdAddressDetailsErrors[keyof PutV2EmploymentsEmploymentIdAddressDetailsErrors]; +export type PostV1ReadyError = PostV1ReadyErrors[keyof PostV1ReadyErrors]; -export type PutV2EmploymentsEmploymentIdAddressDetailsResponses = { +export type PostV1ReadyResponses = { /** * Success */ - 200: EmploymentDetailsOnlyResponse; + 200: EmploymentResponse; }; -export type PutV2EmploymentsEmploymentIdAddressDetailsResponse = - PutV2EmploymentsEmploymentIdAddressDetailsResponses[keyof PutV2EmploymentsEmploymentIdAddressDetailsResponses]; +export type PostV1ReadyResponse = + PostV1ReadyResponses[keyof PostV1ReadyResponses]; -export type GetV1CompaniesCompanyIdPricingPlansData = { - body?: never; - path: { - /** - * Company ID - */ - company_id: UuidSlug; - }; +export type PostV1CostCalculatorEstimationData = { + /** + * Estimate params + */ + body: CostCalculatorEstimateParams; + path?: never; query?: never; - url: '/v1/companies/{company_id}/pricing-plans'; + url: '/v1/cost-calculator/estimation'; }; -export type GetV1CompaniesCompanyIdPricingPlansErrors = { - /** - * Unauthorized - */ - 401: UnauthorizedResponse; +export type PostV1CostCalculatorEstimationErrors = { /** * Not Found */ @@ -13254,35 +13150,61 @@ export type GetV1CompaniesCompanyIdPricingPlansErrors = { 422: UnprocessableEntityResponse; }; -export type GetV1CompaniesCompanyIdPricingPlansError = - GetV1CompaniesCompanyIdPricingPlansErrors[keyof GetV1CompaniesCompanyIdPricingPlansErrors]; +export type PostV1CostCalculatorEstimationError = + PostV1CostCalculatorEstimationErrors[keyof PostV1CostCalculatorEstimationErrors]; -export type GetV1CompaniesCompanyIdPricingPlansResponses = { +export type PostV1CostCalculatorEstimationResponses = { /** * Success */ - 200: ListCompanyPricingPlansResponse; + 200: CostCalculatorEstimateResponse; }; -export type GetV1CompaniesCompanyIdPricingPlansResponse = - GetV1CompaniesCompanyIdPricingPlansResponses[keyof GetV1CompaniesCompanyIdPricingPlansResponses]; +export type PostV1CostCalculatorEstimationResponse = + PostV1CostCalculatorEstimationResponses[keyof PostV1CostCalculatorEstimationResponses]; -export type PostV1CompaniesCompanyIdPricingPlansData = { - /** - * Create Pricing Plan parameters - */ - body: CreatePricingPlanParams; - path: { +export type GetV1IncentivesRecurringData = { + body?: never; + headers: { /** - * Company ID + * Requires a Company-scoped access token obtained through the Authorization Code flow or the Refresh Token flow. + * + * The refresh token needs to have been obtained through the Authorization Code flow. + * */ - company_id: UuidSlug; + Authorization: string; }; - query?: never; - url: '/v1/companies/{company_id}/pricing-plans'; + path?: never; + query?: { + /** + * Filter by recurring incentive status: active or deactive. + */ + status?: string; + /** + * Filter by recurring incentive type. + */ + type?: string; + /** + * Filter by recurring incentives that contain the value in their notes. + */ + note?: string; + /** + * Starts fetching records after the given page + */ + page?: number; + /** + * Change the amount of records returned per page, defaults to 20, limited to 100 + */ + page_size?: number; + }; + url: '/v1/incentives/recurring'; }; -export type PostV1CompaniesCompanyIdPricingPlansErrors = { +export type GetV1IncentivesRecurringErrors = { + /** + * Bad Request + */ + 400: BadRequestResponse; /** * Unauthorized */ @@ -13295,34 +13217,49 @@ export type PostV1CompaniesCompanyIdPricingPlansErrors = { * Unprocessable Entity */ 422: UnprocessableEntityResponse; + /** + * Too many requests + */ + 429: TooManyRequestsResponse; }; -export type PostV1CompaniesCompanyIdPricingPlansError = - PostV1CompaniesCompanyIdPricingPlansErrors[keyof PostV1CompaniesCompanyIdPricingPlansErrors]; +export type GetV1IncentivesRecurringError = + GetV1IncentivesRecurringErrors[keyof GetV1IncentivesRecurringErrors]; -export type PostV1CompaniesCompanyIdPricingPlansResponses = { +export type GetV1IncentivesRecurringResponses = { /** * Success */ - 200: CreatePricingPlanResponse; + 201: ListRecurringIncentivesResponse; }; -export type PostV1CompaniesCompanyIdPricingPlansResponse = - PostV1CompaniesCompanyIdPricingPlansResponses[keyof PostV1CompaniesCompanyIdPricingPlansResponses]; +export type GetV1IncentivesRecurringResponse = + GetV1IncentivesRecurringResponses[keyof GetV1IncentivesRecurringResponses]; -export type GetV1ProbationCompletionLetterIdData = { - body?: never; - path: { +export type PostV1IncentivesRecurringData = { + /** + * RecurringIncentive + */ + body?: CreateRecurringIncentiveParams; + headers: { /** - * probation completion letter ID + * Requires a Company-scoped access token obtained through the Authorization Code flow or the Refresh Token flow. + * + * The refresh token needs to have been obtained through the Authorization Code flow. + * */ - id: string; + Authorization: string; }; + path?: never; query?: never; - url: '/v1/probation-completion-letter/{id}'; + url: '/v1/incentives/recurring'; }; -export type GetV1ProbationCompletionLetterIdErrors = { +export type PostV1IncentivesRecurringErrors = { + /** + * Bad Request + */ + 400: BadRequestResponse; /** * Unauthorized */ @@ -13335,42 +13272,58 @@ export type GetV1ProbationCompletionLetterIdErrors = { * Unprocessable Entity */ 422: UnprocessableEntityResponse; + /** + * Too many requests + */ + 429: TooManyRequestsResponse; }; -export type GetV1ProbationCompletionLetterIdError = - GetV1ProbationCompletionLetterIdErrors[keyof GetV1ProbationCompletionLetterIdErrors]; +export type PostV1IncentivesRecurringError = + PostV1IncentivesRecurringErrors[keyof PostV1IncentivesRecurringErrors]; -export type GetV1ProbationCompletionLetterIdResponses = { +export type PostV1IncentivesRecurringResponses = { /** * Success */ - 200: ProbationCompletionLetterResponse; + 201: RecurringIncentiveResponse; }; -export type GetV1ProbationCompletionLetterIdResponse = - GetV1ProbationCompletionLetterIdResponses[keyof GetV1ProbationCompletionLetterIdResponses]; +export type PostV1IncentivesRecurringResponse = + PostV1IncentivesRecurringResponses[keyof PostV1IncentivesRecurringResponses]; -export type GetV1ContractorInvoicesIdData = { +export type GetV1TimesheetsData = { body?: never; - path: { + path?: never; + query?: { /** - * Resource unique identifier + * Filter timesheets by their status */ - id: UuidSlug; + status?: TimesheetStatus; + /** + * Sort order + */ + order?: 'asc' | 'desc'; + /** + * Field to sort by + */ + sort_by?: 'submitted_at'; + /** + * Starts fetching records after the given page + */ + page?: number; + /** + * Number of items per page + */ + page_size?: number; }; - query?: never; - url: '/v1/contractor-invoices/{id}'; + url: '/v1/timesheets'; }; -export type GetV1ContractorInvoicesIdErrors = { +export type GetV1TimesheetsErrors = { /** * Unauthorized */ 401: UnauthorizedResponse; - /** - * Forbidden - */ - 403: ForbiddenResponse; /** * Not Found */ @@ -13381,30 +13334,34 @@ export type GetV1ContractorInvoicesIdErrors = { 422: UnprocessableEntityResponse; }; -export type GetV1ContractorInvoicesIdError = - GetV1ContractorInvoicesIdErrors[keyof GetV1ContractorInvoicesIdErrors]; +export type GetV1TimesheetsError = + GetV1TimesheetsErrors[keyof GetV1TimesheetsErrors]; -export type GetV1ContractorInvoicesIdResponses = { +export type GetV1TimesheetsResponses = { /** * Success */ - 200: ContractorInvoiceResponse; + 200: ListTimesheetsResponse; }; -export type GetV1ContractorInvoicesIdResponse = - GetV1ContractorInvoicesIdResponses[keyof GetV1ContractorInvoicesIdResponses]; +export type GetV1TimesheetsResponse = + GetV1TimesheetsResponses[keyof GetV1TimesheetsResponses]; -export type PostV1CurrencyConverterRawData = { +export type PostV1TimesheetsData = { /** - * Convert currency parameters + * Timesheet */ - body: ConvertCurrencyParams; + body?: CreateTimesheetParams; path?: never; query?: never; - url: '/v1/currency-converter/raw'; + url: '/v1/timesheets'; }; -export type PostV1CurrencyConverterRawErrors = { +export type PostV1TimesheetsErrors = { + /** + * Bad Request + */ + 400: BadRequestResponse; /** * Unauthorized */ @@ -13419,45 +13376,32 @@ export type PostV1CurrencyConverterRawErrors = { 422: UnprocessableEntityResponse; }; -export type PostV1CurrencyConverterRawError = - PostV1CurrencyConverterRawErrors[keyof PostV1CurrencyConverterRawErrors]; +export type PostV1TimesheetsError = + PostV1TimesheetsErrors[keyof PostV1TimesheetsErrors]; -export type PostV1CurrencyConverterRawResponses = { +export type PostV1TimesheetsResponses = { /** * Success */ - 200: ConvertCurrencyResponse; + 200: TimesheetResponse; }; -export type PostV1CurrencyConverterRawResponse = - PostV1CurrencyConverterRawResponses[keyof PostV1CurrencyConverterRawResponses]; +export type PostV1TimesheetsResponse = + PostV1TimesheetsResponses[keyof PostV1TimesheetsResponses]; -export type GetV1CountriesCountryCodeContractorContractDetailsData = { +export type PostV1TimesheetsTimesheetIdApproveData = { body?: never; path: { /** - * Country code according to ISO 3-digit alphabetic codes - */ - country_code: string; - }; - query?: { - /** - * Employment ID - */ - employment_id?: string; - /** - * Version of the form schema + * Timesheet ID */ - json_schema_version?: number | 'latest'; + timesheet_id: string; }; - url: '/v1/countries/{country_code}/contractor-contract-details'; + query?: never; + url: '/v1/timesheets/{timesheet_id}/approve'; }; -export type GetV1CountriesCountryCodeContractorContractDetailsErrors = { - /** - * Bad Request - */ - 400: BadRequestResponse; +export type PostV1TimesheetsTimesheetIdApproveErrors = { /** * Unauthorized */ @@ -13470,183 +13414,123 @@ export type GetV1CountriesCountryCodeContractorContractDetailsErrors = { * Unprocessable Entity */ 422: UnprocessableEntityResponse; - /** - * Unprocessable Entity - */ - 429: TooManyRequestsResponse; }; -export type GetV1CountriesCountryCodeContractorContractDetailsError = - GetV1CountriesCountryCodeContractorContractDetailsErrors[keyof GetV1CountriesCountryCodeContractorContractDetailsErrors]; +export type PostV1TimesheetsTimesheetIdApproveError = + PostV1TimesheetsTimesheetIdApproveErrors[keyof PostV1TimesheetsTimesheetIdApproveErrors]; -export type GetV1CountriesCountryCodeContractorContractDetailsResponses = { +export type PostV1TimesheetsTimesheetIdApproveResponses = { /** * Success */ - 200: ContractorContractDetailsResponse; + 200: MinimalTimesheetResponse; }; -export type GetV1CountriesCountryCodeContractorContractDetailsResponse = - GetV1CountriesCountryCodeContractorContractDetailsResponses[keyof GetV1CountriesCountryCodeContractorContractDetailsResponses]; +export type PostV1TimesheetsTimesheetIdApproveResponse = + PostV1TimesheetsTimesheetIdApproveResponses[keyof PostV1TimesheetsTimesheetIdApproveResponses]; -export type GetV1EmployeeIncentivesData = { +export type GetV1ProbationCompletionLetterIdData = { body?: never; - path?: never; + path: { + /** + * probation completion letter ID + */ + id: string; + }; query?: never; - url: '/v1/employee/incentives'; + url: '/v1/probation-completion-letter/{id}'; }; -export type GetV1EmployeeIncentivesErrors = { +export type GetV1ProbationCompletionLetterIdErrors = { /** * Unauthorized */ 401: UnauthorizedResponse; - /** - * Forbidden - */ - 403: ForbiddenResponse; /** * Not Found */ 404: NotFoundResponse; + /** + * Unprocessable Entity + */ + 422: UnprocessableEntityResponse; }; -export type GetV1EmployeeIncentivesError = - GetV1EmployeeIncentivesErrors[keyof GetV1EmployeeIncentivesErrors]; +export type GetV1ProbationCompletionLetterIdError = + GetV1ProbationCompletionLetterIdErrors[keyof GetV1ProbationCompletionLetterIdErrors]; -export type GetV1EmployeeIncentivesResponses = { +export type GetV1ProbationCompletionLetterIdResponses = { /** * Success */ - 200: SuccessResponse; + 200: ProbationCompletionLetterResponse; }; -export type GetV1EmployeeIncentivesResponse = - GetV1EmployeeIncentivesResponses[keyof GetV1EmployeeIncentivesResponses]; +export type GetV1ProbationCompletionLetterIdResponse = + GetV1ProbationCompletionLetterIdResponses[keyof GetV1ProbationCompletionLetterIdResponses]; -export type GetV1EmploymentsData = { +export type GetV1SsoConfigurationData = { body?: never; - headers: { - /** - * Requires a Company-scoped access token obtained through the Authorization Code flow or the Refresh Token flow. - * - * The refresh token needs to have been obtained through the Authorization Code flow. - * - */ - Authorization: string; - }; path?: never; - query?: { - /** - * Company ID - */ - company_id?: string; - /** - * Filters the results by employments whose login email matches the value - */ - email?: string; - /** - * Filters the results by employments whose status matches the value. - * Supports multiple values separated by commas. - * Also supports the value `incomplete` to get all employments that are not onboarded yet. - * - */ - status?: string; - /** - * Filters the results by employments whose employment product type matches the value - */ - employment_type?: string; - /** - * Filters the results by employments whose employment model matches the value. - * Possible values: `global_payroll`, `peo`, `eor` - * - */ - employment_model?: 'global_payroll' | 'peo' | 'eor'; - /** - * Filters the results by the employment's short ID. Returns at most one result. - */ - short_id?: string; - /** - * Starts fetching records after the given page - */ - page?: number; - /** - * Number of items per page - */ - page_size?: number; - }; - url: '/v1/employments'; + query?: never; + url: '/v1/sso-configuration'; }; -export type GetV1EmploymentsErrors = { +export type GetV1SsoConfigurationErrors = { /** * Bad Request */ 400: BadRequestResponse; /** - * Forbidden + * Unauthorized */ - 403: ForbiddenResponse; + 401: UnauthorizedResponse; /** - * Conflict + * Not Found */ - 409: ConflictResponse; - /** - * Unprocessable Entity - */ - 422: UnprocessableEntityResponse; + 404: NotFoundResponse; /** * Unprocessable Entity */ 429: TooManyRequestsResponse; }; -export type GetV1EmploymentsError = - GetV1EmploymentsErrors[keyof GetV1EmploymentsErrors]; +export type GetV1SsoConfigurationError = + GetV1SsoConfigurationErrors[keyof GetV1SsoConfigurationErrors]; -export type GetV1EmploymentsResponses = { +export type GetV1SsoConfigurationResponses = { /** * Success */ - 200: ListEmploymentsResponse; + 200: SsoConfigurationResponse; }; -export type GetV1EmploymentsResponse = - GetV1EmploymentsResponses[keyof GetV1EmploymentsResponses]; +export type GetV1SsoConfigurationResponse = + GetV1SsoConfigurationResponses[keyof GetV1SsoConfigurationResponses]; -export type PostV1EmploymentsData = { +export type PostV1SsoConfigurationData = { /** - * Employment params + * CreateSSOConfiguration */ - body?: EmploymentCreateParams; - headers: { - /** - * Requires a Company-scoped access token obtained through the Authorization Code flow or the Refresh Token flow. - * - * The refresh token needs to have been obtained through the Authorization Code flow. - * - */ - Authorization: string; - }; + body: CreateSsoConfigurationParams; path?: never; - query?: { - /** - * Version of the form schema - */ - json_schema_version?: number | 'latest'; - }; - url: '/v1/employments'; + query?: never; + url: '/v1/sso-configuration'; }; -export type PostV1EmploymentsErrors = { +export type PostV1SsoConfigurationErrors = { /** * Bad Request */ 400: BadRequestResponse; /** - * Forbidden + * Unauthorized */ - 403: ForbiddenResponse; + 401: UnauthorizedResponse; + /** + * Not Found + */ + 404: NotFoundResponse; /** * Conflict */ @@ -13661,79 +13545,50 @@ export type PostV1EmploymentsErrors = { 429: TooManyRequestsResponse; }; -export type PostV1EmploymentsError = - PostV1EmploymentsErrors[keyof PostV1EmploymentsErrors]; +export type PostV1SsoConfigurationError = + PostV1SsoConfigurationErrors[keyof PostV1SsoConfigurationErrors]; -export type PostV1EmploymentsResponses = { +export type PostV1SsoConfigurationResponses = { /** - * Success + * Created */ - 200: EmploymentCreationResponse; + 201: CreateSsoConfigurationResponse; }; -export type PostV1EmploymentsResponse = - PostV1EmploymentsResponses[keyof PostV1EmploymentsResponses]; - -export type GetV1CompaniesCompanyIdEmploymentsEmploymentIdOnboardingReservesStatusData = - { - body?: never; - path: { - /** - * Company ID - */ - company_id: UuidSlug; - /** - * Employment ID - */ - employment_id: UuidSlug; - }; - query?: never; - url: '/v1/companies/{company_id}/employments/{employment_id}/onboarding-reserves-status'; - }; +export type PostV1SsoConfigurationResponse = + PostV1SsoConfigurationResponses[keyof PostV1SsoConfigurationResponses]; -export type GetV1CompaniesCompanyIdEmploymentsEmploymentIdOnboardingReservesStatusErrors = - { +export type GetV1OffboardingsData = { + body?: never; + path?: never; + query?: { /** - * Unauthorized + * Filter by Employment ID */ - 401: UnauthorizedResponse; + employment_id?: string; /** - * Forbidden + * Filter by offboarding type */ - 403: ForbiddenResponse; + type?: string; /** - * Not Found + * By default, the results do not include confidential termination requests. + * Send `include_confidential=true` to include confidential requests in the response. + * */ - 404: NotFoundResponse; - }; - -export type GetV1CompaniesCompanyIdEmploymentsEmploymentIdOnboardingReservesStatusError = - GetV1CompaniesCompanyIdEmploymentsEmploymentIdOnboardingReservesStatusErrors[keyof GetV1CompaniesCompanyIdEmploymentsEmploymentIdOnboardingReservesStatusErrors]; - -export type GetV1CompaniesCompanyIdEmploymentsEmploymentIdOnboardingReservesStatusResponses = - { + include_confidential?: string; /** - * Success + * Starts fetching records after the given page */ - 200: OnboardingReservesStatusResponse; - }; - -export type GetV1CompaniesCompanyIdEmploymentsEmploymentIdOnboardingReservesStatusResponse = - GetV1CompaniesCompanyIdEmploymentsEmploymentIdOnboardingReservesStatusResponses[keyof GetV1CompaniesCompanyIdEmploymentsEmploymentIdOnboardingReservesStatusResponses]; - -export type GetV1EmployeeBankAccountData = { - body?: never; - path?: never; - query?: { + page?: number; /** - * Version of the bank_account_details form schema + * Change the amount of records returned per page, defaults to 20, limited to 100 */ - bank_account_details_json_schema_version?: number | 'latest'; + page_size?: number; }; - url: '/v1/employee/bank-account'; + url: '/v1/offboardings'; }; -export type GetV1EmployeeBankAccountErrors = { +export type GetV1OffboardingsErrors = { /** * Bad Request */ @@ -13742,10 +13597,6 @@ export type GetV1EmployeeBankAccountErrors = { * Unauthorized */ 401: UnauthorizedResponse; - /** - * Forbidden - */ - 403: ForbiddenResponse; /** * Not Found */ @@ -13753,38 +13604,37 @@ export type GetV1EmployeeBankAccountErrors = { /** * Unprocessable Entity */ + 422: UnprocessableEntityResponse; + /** + * Too many requests + */ 429: TooManyRequestsResponse; }; -export type GetV1EmployeeBankAccountError = - GetV1EmployeeBankAccountErrors[keyof GetV1EmployeeBankAccountErrors]; +export type GetV1OffboardingsError = + GetV1OffboardingsErrors[keyof GetV1OffboardingsErrors]; -export type GetV1EmployeeBankAccountResponses = { +export type GetV1OffboardingsResponses = { /** * Success */ - 200: EmploymentDetailsOnlyResponse; + 200: ListOffboardingResponse; }; -export type GetV1EmployeeBankAccountResponse = - GetV1EmployeeBankAccountResponses[keyof GetV1EmployeeBankAccountResponses]; +export type GetV1OffboardingsResponse = + GetV1OffboardingsResponses[keyof GetV1OffboardingsResponses]; -export type PutV1EmployeeBankAccountData = { +export type PostV1OffboardingsData = { /** - * Employee bank account details params + * Offboarding */ - body?: EmploymentBankAccountDetailsParams; + body?: CreateOffboardingParams; path?: never; - query?: { - /** - * Version of the bank_account_details form schema - */ - bank_account_details_json_schema_version?: number | 'latest'; - }; - url: '/v1/employee/bank-account'; + query?: never; + url: '/v1/offboardings'; }; -export type PutV1EmployeeBankAccountErrors = { +export type PostV1OffboardingsErrors = { /** * Bad Request */ @@ -13793,10 +13643,6 @@ export type PutV1EmployeeBankAccountErrors = { * Unauthorized */ 401: UnauthorizedResponse; - /** - * Forbidden - */ - 403: ForbiddenResponse; /** * Not Found */ @@ -13806,117 +13652,144 @@ export type PutV1EmployeeBankAccountErrors = { */ 422: UnprocessableEntityResponse; /** - * Unprocessable Entity + * Too many requests */ 429: TooManyRequestsResponse; + /** + * Internal Server Error + */ + 500: RequestError; }; -export type PutV1EmployeeBankAccountError = - PutV1EmployeeBankAccountErrors[keyof PutV1EmployeeBankAccountErrors]; +export type PostV1OffboardingsError = + PostV1OffboardingsErrors[keyof PostV1OffboardingsErrors]; -export type PutV1EmployeeBankAccountResponses = { +export type PostV1OffboardingsResponses = { /** * Success */ - 200: EmploymentDetailsOnlyResponse; + 201: OffboardingResponse; }; -export type PutV1EmployeeBankAccountResponse = - PutV1EmployeeBankAccountResponses[keyof PutV1EmployeeBankAccountResponses]; +export type PostV1OffboardingsResponse = + PostV1OffboardingsResponses[keyof PostV1OffboardingsResponses]; -export type GetV1HelpCenterArticlesIdData = { - body?: never; +export type PostV1ContractorsEmploymentsEmploymentIdContractDocumentsData = { + /** + * CreateContractDocumentParams + */ + body: CreateContractDocument; path: { /** - * Help Center Article Zendesk ID + * Employment ID */ - id: number; + employment_id: string; }; query?: never; - url: '/v1/help-center-articles/{id}'; + url: '/v1/contractors/employments/{employment_id}/contract-documents'; }; -export type GetV1HelpCenterArticlesIdErrors = { +export type PostV1ContractorsEmploymentsEmploymentIdContractDocumentsErrors = { + /** + * Unauthorized + */ + 401: UnauthorizedResponse; /** * Not Found */ 404: NotFoundResponse; -}; - -export type GetV1HelpCenterArticlesIdError = - GetV1HelpCenterArticlesIdErrors[keyof GetV1HelpCenterArticlesIdErrors]; - -export type GetV1HelpCenterArticlesIdResponses = { /** - * Success + * Unprocessable Entity */ - 200: HelpCenterArticleResponse; + 422: UnprocessableEntityResponse; }; -export type GetV1HelpCenterArticlesIdResponse = - GetV1HelpCenterArticlesIdResponses[keyof GetV1HelpCenterArticlesIdResponses]; +export type PostV1ContractorsEmploymentsEmploymentIdContractDocumentsError = + PostV1ContractorsEmploymentsEmploymentIdContractDocumentsErrors[keyof PostV1ContractorsEmploymentsEmploymentIdContractDocumentsErrors]; -export type GetV1ScimV2UsersIdData = { - body?: never; +export type PostV1ContractorsEmploymentsEmploymentIdContractDocumentsResponses = + { + /** + * Success + */ + 200: CreateContractDocumentResponse; + }; + +export type PostV1ContractorsEmploymentsEmploymentIdContractDocumentsResponse = + PostV1ContractorsEmploymentsEmploymentIdContractDocumentsResponses[keyof PostV1ContractorsEmploymentsEmploymentIdContractDocumentsResponses]; + +export type PutV1EmploymentsEmploymentIdFederalTaxesData = { + /** + * Employment federal taxes params + */ + body?: EmploymentFederalTaxesParams; path: { /** - * User ID (slug) + * Employment ID */ - id: string; + employment_id: string; }; query?: never; - url: '/v1/scim/v2/Users/{id}'; + url: '/v1/employments/{employment_id}/federal-taxes'; }; -export type GetV1ScimV2UsersIdErrors = { +export type PutV1EmploymentsEmploymentIdFederalTaxesErrors = { /** - * Unauthorized + * Bad Request */ - 401: IntegrationsScimErrorResponse; + 400: BadRequestResponse; /** * Forbidden */ - 403: IntegrationsScimErrorResponse; + 403: ForbiddenResponse; /** * Not Found */ - 404: IntegrationsScimErrorResponse; -}; + 404: NotFoundResponse; + /** + * Conflict + */ + 409: ConflictResponse; + /** + * Unprocessable Entity + */ + 422: UnprocessableEntityResponse; + /** + * Unprocessable Entity + */ + 429: TooManyRequestsResponse; +}; -export type GetV1ScimV2UsersIdError = - GetV1ScimV2UsersIdErrors[keyof GetV1ScimV2UsersIdErrors]; +export type PutV1EmploymentsEmploymentIdFederalTaxesError = + PutV1EmploymentsEmploymentIdFederalTaxesErrors[keyof PutV1EmploymentsEmploymentIdFederalTaxesErrors]; -export type GetV1ScimV2UsersIdResponses = { +export type PutV1EmploymentsEmploymentIdFederalTaxesResponses = { /** * Success */ - 200: IntegrationsScimUser; + 200: SuccessResponse; }; -export type GetV1ScimV2UsersIdResponse = - GetV1ScimV2UsersIdResponses[keyof GetV1ScimV2UsersIdResponses]; +export type PutV1EmploymentsEmploymentIdFederalTaxesResponse = + PutV1EmploymentsEmploymentIdFederalTaxesResponses[keyof PutV1EmploymentsEmploymentIdFederalTaxesResponses]; -export type GetV2EmploymentsEmploymentIdEngagementAgreementDetailsData = { +export type GetV1CompaniesCompanyIdPricingPlansData = { body?: never; path: { /** - * Employment ID + * Company ID */ - employment_id: string; + company_id: UuidSlug; }; query?: never; - url: '/v2/employments/{employment_id}/engagement-agreement-details'; + url: '/v1/companies/{company_id}/pricing-plans'; }; -export type GetV2EmploymentsEmploymentIdEngagementAgreementDetailsErrors = { - /** - * Bad Request - */ - 400: BadRequestResponse; +export type GetV1CompaniesCompanyIdPricingPlansErrors = { /** - * Forbidden + * Unauthorized */ - 403: ForbiddenResponse; + 401: UnauthorizedResponse; /** * Not Found */ @@ -13925,93 +13798,90 @@ export type GetV2EmploymentsEmploymentIdEngagementAgreementDetailsErrors = { * Unprocessable Entity */ 422: UnprocessableEntityResponse; - /** - * Unprocessable Entity - */ - 429: TooManyRequestsResponse; }; -export type GetV2EmploymentsEmploymentIdEngagementAgreementDetailsError = - GetV2EmploymentsEmploymentIdEngagementAgreementDetailsErrors[keyof GetV2EmploymentsEmploymentIdEngagementAgreementDetailsErrors]; +export type GetV1CompaniesCompanyIdPricingPlansError = + GetV1CompaniesCompanyIdPricingPlansErrors[keyof GetV1CompaniesCompanyIdPricingPlansErrors]; -export type GetV2EmploymentsEmploymentIdEngagementAgreementDetailsResponses = { +export type GetV1CompaniesCompanyIdPricingPlansResponses = { /** * Success */ - 200: EmploymentEngagementAgreementDetailsResponse; + 200: ListCompanyPricingPlansResponse; }; -export type GetV2EmploymentsEmploymentIdEngagementAgreementDetailsResponse = - GetV2EmploymentsEmploymentIdEngagementAgreementDetailsResponses[keyof GetV2EmploymentsEmploymentIdEngagementAgreementDetailsResponses]; +export type GetV1CompaniesCompanyIdPricingPlansResponse = + GetV1CompaniesCompanyIdPricingPlansResponses[keyof GetV1CompaniesCompanyIdPricingPlansResponses]; -export type PostV2EmploymentsEmploymentIdEngagementAgreementDetailsData = { +export type PostV1CompaniesCompanyIdPricingPlansData = { /** - * Employment engagement agreement details params + * Create Pricing Plan parameters */ - body?: EmploymentEngagementAgreementDetailsParams; + body: CreatePricingPlanParams; path: { /** - * Employment ID + * Company ID */ - employment_id: string; + company_id: UuidSlug; }; query?: never; - url: '/v2/employments/{employment_id}/engagement-agreement-details'; + url: '/v1/companies/{company_id}/pricing-plans'; }; -export type PostV2EmploymentsEmploymentIdEngagementAgreementDetailsErrors = { - /** - * Bad Request - */ - 400: BadRequestResponse; +export type PostV1CompaniesCompanyIdPricingPlansErrors = { /** - * Forbidden + * Unauthorized */ - 403: ForbiddenResponse; + 401: UnauthorizedResponse; /** * Not Found */ 404: NotFoundResponse; - /** - * Conflict - */ - 409: ConflictResponse; /** * Unprocessable Entity */ 422: UnprocessableEntityResponse; - /** - * Unprocessable Entity - */ - 429: TooManyRequestsResponse; }; -export type PostV2EmploymentsEmploymentIdEngagementAgreementDetailsError = - PostV2EmploymentsEmploymentIdEngagementAgreementDetailsErrors[keyof PostV2EmploymentsEmploymentIdEngagementAgreementDetailsErrors]; +export type PostV1CompaniesCompanyIdPricingPlansError = + PostV1CompaniesCompanyIdPricingPlansErrors[keyof PostV1CompaniesCompanyIdPricingPlansErrors]; -export type PostV2EmploymentsEmploymentIdEngagementAgreementDetailsResponses = { +export type PostV1CompaniesCompanyIdPricingPlansResponses = { /** * Success */ - 200: SuccessResponse; + 200: CreatePricingPlanResponse; }; -export type PostV2EmploymentsEmploymentIdEngagementAgreementDetailsResponse = - PostV2EmploymentsEmploymentIdEngagementAgreementDetailsResponses[keyof PostV2EmploymentsEmploymentIdEngagementAgreementDetailsResponses]; +export type PostV1CompaniesCompanyIdPricingPlansResponse = + PostV1CompaniesCompanyIdPricingPlansResponses[keyof PostV1CompaniesCompanyIdPricingPlansResponses]; -export type GetV1EmployeeDocumentsIdData = { +export type GetV1OffboardingsEmploymentsEmploymentIdData = { body?: never; path: { /** - * Document ID + * Employment ID */ - id: string; + employment_id: string; }; - query?: never; - url: '/v1/employee/documents/{id}'; + query?: { + /** + * Starts fetching records after the given page + */ + page?: number; + /** + * Change the amount of records returned per page, defaults to 20, limited to 100 + */ + page_size?: number; + }; + url: '/v1/offboardings/employments/{employment_id}'; }; -export type GetV1EmployeeDocumentsIdErrors = { +export type GetV1OffboardingsEmploymentsEmploymentIdErrors = { + /** + * Bad Request + */ + 400: BadRequestResponse; /** * Unauthorized */ @@ -14024,86 +13894,42 @@ export type GetV1EmployeeDocumentsIdErrors = { * Unprocessable Entity */ 422: UnprocessableEntityResponse; + /** + * Too many requests + */ + 429: TooManyRequestsResponse; }; -export type GetV1EmployeeDocumentsIdError = - GetV1EmployeeDocumentsIdErrors[keyof GetV1EmployeeDocumentsIdErrors]; +export type GetV1OffboardingsEmploymentsEmploymentIdError = + GetV1OffboardingsEmploymentsEmploymentIdErrors[keyof GetV1OffboardingsEmploymentsEmploymentIdErrors]; -export type GetV1EmployeeDocumentsIdResponses = { +export type GetV1OffboardingsEmploymentsEmploymentIdResponses = { /** * Success */ - 200: DownloadDocumentResponse; + 200: ListOffboardingResponse; }; -export type GetV1EmployeeDocumentsIdResponse = - GetV1EmployeeDocumentsIdResponses[keyof GetV1EmployeeDocumentsIdResponses]; +export type GetV1OffboardingsEmploymentsEmploymentIdResponse = + GetV1OffboardingsEmploymentsEmploymentIdResponses[keyof GetV1OffboardingsEmploymentsEmploymentIdResponses]; -export type GetV1ContractorInvoicesData = { +export type GetV1EmployeeAddressData = { body?: never; path?: never; query?: { /** - * Filters contractor invoices by status matching the value. - */ - status?: ContractorInvoiceStatus; - /** - * Filters contractor invoices by invoice schedule ID matching the value. - */ - contractor_invoice_schedule_id?: UuidSlug; - /** - * Filters contractor invoices by date greater than or equal to the value. - */ - date_from?: Date; - /** - * Filters contractor invoices by date less than or equal to the value. - */ - date_to?: Date; - /** - * Filters contractor invoices by due date greater than or equal to the value. - */ - due_date_from?: Date; - /** - * Filters contractor invoices by due date less than or equal to the value. - */ - due_date_to?: Date; - /** - * Filters contractor invoices by approved date greater than or equal to the value. - */ - approved_date_from?: Date; - /** - * Filters contractor invoices by approved date less than or equal to the value. - */ - approved_date_to?: Date; - /** - * Filters contractor invoices by paid out date greater than or equal to the value. - */ - paid_out_date_from?: Date; - /** - * Filters contractor invoices by paid out date less than or equal to the value. - */ - paid_out_date_to?: Date; - /** - * Field to sort by - */ - sort_by?: 'date' | 'due_date' | 'approved_at' | 'paid_out_at'; - /** - * Sort order - */ - order?: 'asc' | 'desc'; - /** - * Starts fetching records after the given page - */ - page?: number; - /** - * Number of items per page + * Version of the address_details form schema */ - page_size?: number; + address_details_json_schema_version?: number | 'latest'; }; - url: '/v1/contractor-invoices'; + url: '/v1/employee/address'; }; -export type GetV1ContractorInvoicesErrors = { +export type GetV1EmployeeAddressErrors = { + /** + * Bad Request + */ + 400: BadRequestResponse; /** * Unauthorized */ @@ -14119,151 +13945,175 @@ export type GetV1ContractorInvoicesErrors = { /** * Unprocessable Entity */ - 422: UnprocessableEntityResponse; + 429: TooManyRequestsResponse; }; -export type GetV1ContractorInvoicesError = - GetV1ContractorInvoicesErrors[keyof GetV1ContractorInvoicesErrors]; +export type GetV1EmployeeAddressError = + GetV1EmployeeAddressErrors[keyof GetV1EmployeeAddressErrors]; -export type GetV1ContractorInvoicesResponses = { +export type GetV1EmployeeAddressResponses = { /** * Success */ - 200: ListContractorInvoicesResponse; + 200: EmploymentDetailsOnlyResponse; }; -export type GetV1ContractorInvoicesResponse = - GetV1ContractorInvoicesResponses[keyof GetV1ContractorInvoicesResponses]; +export type GetV1EmployeeAddressResponse = + GetV1EmployeeAddressResponses[keyof GetV1EmployeeAddressResponses]; -export type PostV1SdkTelemetryErrorsData = { +export type PutV1EmployeeAddressData = { /** - * SDK Error Report + * Employee address details params */ - body: SdkErrorPayload; + body?: EmploymentAddressDetailsParams; path?: never; - query?: never; - url: '/v1/sdk/telemetry-errors'; + query?: { + /** + * Version of the address_details form schema + */ + address_details_json_schema_version?: number | 'latest'; + }; + url: '/v1/employee/address'; }; -export type PostV1SdkTelemetryErrorsErrors = { +export type PutV1EmployeeAddressErrors = { /** * Bad Request */ - 400: ErrorResponse; + 400: BadRequestResponse; /** - * Too Many Requests + * Unauthorized */ - 429: RateLimitResponse; -}; - -export type PostV1SdkTelemetryErrorsError = - PostV1SdkTelemetryErrorsErrors[keyof PostV1SdkTelemetryErrorsErrors]; - -export type PostV1SdkTelemetryErrorsResponses = { + 401: UnauthorizedResponse; /** - * No Content + * Forbidden */ - 204: unknown; -}; - -export type GetV1SsoConfigurationDetailsData = { - body?: never; - path?: never; - query?: never; - url: '/v1/sso-configuration/details'; -}; - -export type GetV1SsoConfigurationDetailsErrors = { - /** - * Bad Request - */ - 400: BadRequestResponse; - /** - * Unauthorized - */ - 401: UnauthorizedResponse; + 403: ForbiddenResponse; /** * Not Found */ 404: NotFoundResponse; + /** + * Unprocessable Entity + */ + 422: UnprocessableEntityResponse; /** * Unprocessable Entity */ 429: TooManyRequestsResponse; }; -export type GetV1SsoConfigurationDetailsError = - GetV1SsoConfigurationDetailsErrors[keyof GetV1SsoConfigurationDetailsErrors]; +export type PutV1EmployeeAddressError = + PutV1EmployeeAddressErrors[keyof PutV1EmployeeAddressErrors]; -export type GetV1SsoConfigurationDetailsResponses = { +export type PutV1EmployeeAddressResponses = { /** * Success */ - 200: SsoConfigurationDetailsResponse; + 200: EmploymentDetailsOnlyResponse; }; -export type GetV1SsoConfigurationDetailsResponse = - GetV1SsoConfigurationDetailsResponses[keyof GetV1SsoConfigurationDetailsResponses]; +export type PutV1EmployeeAddressResponse = + PutV1EmployeeAddressResponses[keyof PutV1EmployeeAddressResponses]; -export type PostV1CostCalculatorEstimationData = { +export type PutV2EmploymentsEmploymentIdFederalTaxesData = { /** - * Estimate params + * Employment federal taxes params */ - body: CostCalculatorEstimateParams; - path?: never; + body?: EmploymentFederalTaxesParams; + path: { + /** + * Employment ID + */ + employment_id: string; + }; query?: never; - url: '/v1/cost-calculator/estimation'; + url: '/v2/employments/{employment_id}/federal-taxes'; }; -export type PostV1CostCalculatorEstimationErrors = { +export type PutV2EmploymentsEmploymentIdFederalTaxesErrors = { + /** + * Bad Request + */ + 400: BadRequestResponse; + /** + * Forbidden + */ + 403: ForbiddenResponse; /** * Not Found */ 404: NotFoundResponse; + /** + * Conflict + */ + 409: ConflictResponse; /** * Unprocessable Entity */ 422: UnprocessableEntityResponse; + /** + * Unprocessable Entity + */ + 429: TooManyRequestsResponse; }; -export type PostV1CostCalculatorEstimationError = - PostV1CostCalculatorEstimationErrors[keyof PostV1CostCalculatorEstimationErrors]; +export type PutV2EmploymentsEmploymentIdFederalTaxesError = + PutV2EmploymentsEmploymentIdFederalTaxesErrors[keyof PutV2EmploymentsEmploymentIdFederalTaxesErrors]; -export type PostV1CostCalculatorEstimationResponses = { +export type PutV2EmploymentsEmploymentIdFederalTaxesResponses = { /** * Success */ - 200: CostCalculatorEstimateResponse; + 200: SuccessResponse; }; -export type PostV1CostCalculatorEstimationResponse = - PostV1CostCalculatorEstimationResponses[keyof PostV1CostCalculatorEstimationResponses]; +export type PutV2EmploymentsEmploymentIdFederalTaxesResponse = + PutV2EmploymentsEmploymentIdFederalTaxesResponses[keyof PutV2EmploymentsEmploymentIdFederalTaxesResponses]; -export type GetV1CompaniesSchemaData = { +export type GetV1TravelLetterRequestsData = { body?: never; path?: never; - query: { + query?: { /** - * Country code according to ISO 3-digit alphabetic codes. + * Filter results on the given status */ - country_code: string; + status?: + | 'pending' + | 'cancelled' + | 'declined_by_manager' + | 'declined_by_remote' + | 'approved_by_manager' + | 'approved_by_remote'; /** - * Name of the desired form + * Filter results on the given employment slug */ - form: 'address_details'; + employment_id?: string; /** - * Version of the form schema + * Filter results on the given employee name */ - json_schema_version?: number | 'latest'; + employee_name?: string; + /** + * Sort order + */ + order?: 'asc' | 'desc'; + /** + * Field to sort by + */ + sort_by?: 'submitted_at'; + /** + * Starts fetching records after the given page + */ + page?: number; + /** + * Number of items per page + */ + page_size?: number; }; - url: '/v1/companies/schema'; + url: '/v1/travel-letter-requests'; }; -export type GetV1CompaniesSchemaErrors = { - /** - * Unauthorized - */ - 401: UnauthorizedResponse; +export type GetV1TravelLetterRequestsErrors = { /** * Not Found */ @@ -14274,45 +14124,36 @@ export type GetV1CompaniesSchemaErrors = { 422: UnprocessableEntityResponse; }; -export type GetV1CompaniesSchemaError = - GetV1CompaniesSchemaErrors[keyof GetV1CompaniesSchemaErrors]; +export type GetV1TravelLetterRequestsError = + GetV1TravelLetterRequestsErrors[keyof GetV1TravelLetterRequestsErrors]; -export type GetV1CompaniesSchemaResponses = { +export type GetV1TravelLetterRequestsResponses = { /** * Success */ - 200: CompanyFormResponse; + 200: ListTravelLettersResponse; }; -export type GetV1CompaniesSchemaResponse = - GetV1CompaniesSchemaResponses[keyof GetV1CompaniesSchemaResponses]; +export type GetV1TravelLetterRequestsResponse = + GetV1TravelLetterRequestsResponses[keyof GetV1TravelLetterRequestsResponses]; -export type GetV1EmploymentsEmploymentIdBenefitOffersData = { +export type GetV2EmploymentsEmploymentIdEngagementAgreementDetailsData = { body?: never; path: { /** - * Unique identifier of the employment - */ - employment_id: UuidSlug; - }; - query?: { - /** - * Starts fetching records after the given page - */ - page?: number; - /** - * Number of items per page + * Employment ID */ - page_size?: number; + employment_id: string; }; - url: '/v1/employments/{employment_id}/benefit-offers'; + query?: never; + url: '/v2/employments/{employment_id}/engagement-agreement-details'; }; -export type GetV1EmploymentsEmploymentIdBenefitOffersErrors = { +export type GetV2EmploymentsEmploymentIdEngagementAgreementDetailsErrors = { /** - * Unauthorized + * Bad Request */ - 401: UnauthorizedResponse; + 400: BadRequestResponse; /** * Forbidden */ @@ -14325,46 +14166,45 @@ export type GetV1EmploymentsEmploymentIdBenefitOffersErrors = { * Unprocessable Entity */ 422: UnprocessableEntityResponse; + /** + * Unprocessable Entity + */ + 429: TooManyRequestsResponse; }; -export type GetV1EmploymentsEmploymentIdBenefitOffersError = - GetV1EmploymentsEmploymentIdBenefitOffersErrors[keyof GetV1EmploymentsEmploymentIdBenefitOffersErrors]; +export type GetV2EmploymentsEmploymentIdEngagementAgreementDetailsError = + GetV2EmploymentsEmploymentIdEngagementAgreementDetailsErrors[keyof GetV2EmploymentsEmploymentIdEngagementAgreementDetailsErrors]; -export type GetV1EmploymentsEmploymentIdBenefitOffersResponses = { +export type GetV2EmploymentsEmploymentIdEngagementAgreementDetailsResponses = { /** * Success */ - 200: EmploymentsBenefitOffersListBenefitOffers; + 200: EmploymentEngagementAgreementDetailsResponse; }; -export type GetV1EmploymentsEmploymentIdBenefitOffersResponse = - GetV1EmploymentsEmploymentIdBenefitOffersResponses[keyof GetV1EmploymentsEmploymentIdBenefitOffersResponses]; +export type GetV2EmploymentsEmploymentIdEngagementAgreementDetailsResponse = + GetV2EmploymentsEmploymentIdEngagementAgreementDetailsResponses[keyof GetV2EmploymentsEmploymentIdEngagementAgreementDetailsResponses]; -export type PutV1EmploymentsEmploymentIdBenefitOffersData = { +export type PostV2EmploymentsEmploymentIdEngagementAgreementDetailsData = { /** - * Upsert employment benefit offers request + * Employment engagement agreement details params */ - body: UnifiedEmploymentUpsertBenefitOffersRequest; + body?: EmploymentEngagementAgreementDetailsParams; path: { /** - * Unique identifier of the employment - */ - employment_id: UuidSlug; - }; - query?: { - /** - * Version of the form schema + * Employment ID */ - json_schema_version?: number | 'latest'; + employment_id: string; }; - url: '/v1/employments/{employment_id}/benefit-offers'; + query?: never; + url: '/v2/employments/{employment_id}/engagement-agreement-details'; }; -export type PutV1EmploymentsEmploymentIdBenefitOffersErrors = { +export type PostV2EmploymentsEmploymentIdEngagementAgreementDetailsErrors = { /** - * Unauthorized + * Bad Request */ - 401: UnauthorizedResponse; + 400: BadRequestResponse; /** * Forbidden */ @@ -14373,38 +14213,60 @@ export type PutV1EmploymentsEmploymentIdBenefitOffersErrors = { * Not Found */ 404: NotFoundResponse; + /** + * Conflict + */ + 409: ConflictResponse; /** * Unprocessable Entity */ 422: UnprocessableEntityResponse; + /** + * Unprocessable Entity + */ + 429: TooManyRequestsResponse; }; -export type PutV1EmploymentsEmploymentIdBenefitOffersError = - PutV1EmploymentsEmploymentIdBenefitOffersErrors[keyof PutV1EmploymentsEmploymentIdBenefitOffersErrors]; +export type PostV2EmploymentsEmploymentIdEngagementAgreementDetailsError = + PostV2EmploymentsEmploymentIdEngagementAgreementDetailsErrors[keyof PostV2EmploymentsEmploymentIdEngagementAgreementDetailsErrors]; -export type PutV1EmploymentsEmploymentIdBenefitOffersResponses = { +export type PostV2EmploymentsEmploymentIdEngagementAgreementDetailsResponses = { /** * Success */ 200: SuccessResponse; }; -export type PutV1EmploymentsEmploymentIdBenefitOffersResponse = - PutV1EmploymentsEmploymentIdBenefitOffersResponses[keyof PutV1EmploymentsEmploymentIdBenefitOffersResponses]; +export type PostV2EmploymentsEmploymentIdEngagementAgreementDetailsResponse = + PostV2EmploymentsEmploymentIdEngagementAgreementDetailsResponses[keyof PostV2EmploymentsEmploymentIdEngagementAgreementDetailsResponses]; -export type GetV1IdentityVerificationEmploymentIdData = { +export type GetV1WdGphPaySummaryData = { body?: never; - path: { + headers?: { /** - * Employment ID + * The preferred language of the inquiring user in Workday */ - employment_id: string; + accept_language?: string; }; - query?: never; - url: '/v1/identity-verification/{employment_id}'; + path?: never; + query?: { + /** + * The pay group ids to lookup (comma separated). Returns all pay groups if not provided + */ + payGroupExternalId?: string; + /** + * Optional country filter (ISO 3166 alpha-2, comma separated) + */ + countryCode?: string; + }; + url: '/v1/wd/gph/paySummary'; }; -export type GetV1IdentityVerificationEmploymentIdErrors = { +export type GetV1WdGphPaySummaryErrors = { + /** + * Bad Request + */ + 400: BadRequestResponse; /** * Unauthorized */ @@ -14413,124 +14275,124 @@ export type GetV1IdentityVerificationEmploymentIdErrors = { * Not Found */ 404: NotFoundResponse; - /** - * Unprocessable Entity - */ - 422: UnprocessableEntityResponse; }; -export type GetV1IdentityVerificationEmploymentIdError = - GetV1IdentityVerificationEmploymentIdErrors[keyof GetV1IdentityVerificationEmploymentIdErrors]; +export type GetV1WdGphPaySummaryError = + GetV1WdGphPaySummaryErrors[keyof GetV1WdGphPaySummaryErrors]; -export type GetV1IdentityVerificationEmploymentIdResponses = { +export type GetV1WdGphPaySummaryResponses = { /** * Success */ - 200: IdentityVerificationResponse; + 200: PaySummaryResponse; }; -export type GetV1IdentityVerificationEmploymentIdResponse = - GetV1IdentityVerificationEmploymentIdResponses[keyof GetV1IdentityVerificationEmploymentIdResponses]; +export type GetV1WdGphPaySummaryResponse = + GetV1WdGphPaySummaryResponses[keyof GetV1WdGphPaySummaryResponses]; -export type GetV1ContractorsEmploymentsEmploymentIdContractorSubscriptionsData = - { - body?: never; - path: { - /** - * Employment ID - */ - employment_id: string; - }; - query?: never; - url: '/v1/contractors/employments/{employment_id}/contractor-subscriptions'; - }; - -export type GetV1ContractorsEmploymentsEmploymentIdContractorSubscriptionsErrors = - { - /** - * Unauthorized - */ - 401: UnauthorizedResponse; - /** - * Forbidden - */ - 403: ForbiddenResponse; +export type GetV1EmploymentsEmploymentIdJobData = { + body?: never; + path: { /** - * Not Found + * Employment ID */ - 404: NotFoundResponse; + employment_id: string; }; + query?: never; + url: '/v1/employments/{employment_id}/job'; +}; -export type GetV1ContractorsEmploymentsEmploymentIdContractorSubscriptionsError = - GetV1ContractorsEmploymentsEmploymentIdContractorSubscriptionsErrors[keyof GetV1ContractorsEmploymentsEmploymentIdContractorSubscriptionsErrors]; +export type GetV1EmploymentsEmploymentIdJobErrors = { + /** + * Unauthorized + */ + 401: UnauthorizedResponse; + /** + * Not Found + */ + 404: NotFoundResponse; + /** + * Unprocessable Entity + */ + 422: UnprocessableEntityResponse; +}; -export type GetV1ContractorsEmploymentsEmploymentIdContractorSubscriptionsResponses = - { - /** - * Success - */ - 200: ContractorSubscriptionSummariesResponse; - }; +export type GetV1EmploymentsEmploymentIdJobError = + GetV1EmploymentsEmploymentIdJobErrors[keyof GetV1EmploymentsEmploymentIdJobErrors]; -export type GetV1ContractorsEmploymentsEmploymentIdContractorSubscriptionsResponse = - GetV1ContractorsEmploymentsEmploymentIdContractorSubscriptionsResponses[keyof GetV1ContractorsEmploymentsEmploymentIdContractorSubscriptionsResponses]; +export type GetV1EmploymentsEmploymentIdJobResponses = { + /** + * Success + */ + 200: EmploymentJobResponse; +}; -export type GetV1EmployeePayslipsData = { - body?: never; +export type GetV1EmploymentsEmploymentIdJobResponse = + GetV1EmploymentsEmploymentIdJobResponses[keyof GetV1EmploymentsEmploymentIdJobResponses]; + +export type PostV1BulkEmploymentJobsData = { + /** + * Bulk employment params + */ + body?: BulkEmploymentCreateParams; path?: never; - query?: { - /** - * Starts fetching records after the given page - */ - page?: number; - /** - * Number of items per page - */ - page_size?: number; - }; - url: '/v1/employee/payslips'; + query?: never; + url: '/v1/bulk-employment-jobs'; }; -export type GetV1EmployeePayslipsErrors = { +export type PostV1BulkEmploymentJobsErrors = { /** - * Unauthorized + * Bad Request */ - 401: UnauthorizedResponse; + 400: BadRequestResponse; /** * Forbidden */ 403: ForbiddenResponse; /** - * Not Found + * Unprocessable Entity */ - 404: NotFoundResponse; + 422: UnprocessableEntityResponse; + /** + * Unprocessable Entity + */ + 429: TooManyRequestsResponse; }; -export type GetV1EmployeePayslipsError = - GetV1EmployeePayslipsErrors[keyof GetV1EmployeePayslipsErrors]; +export type PostV1BulkEmploymentJobsError = + PostV1BulkEmploymentJobsErrors[keyof PostV1BulkEmploymentJobsErrors]; -export type GetV1EmployeePayslipsResponses = { +export type PostV1BulkEmploymentJobsResponses = { /** - * Success + * Accepted */ - 200: ListEmployeePayslipsResponse; + 202: BulkEmploymentImportJobResponse; }; -export type GetV1EmployeePayslipsResponse = - GetV1EmployeePayslipsResponses[keyof GetV1EmployeePayslipsResponses]; +export type PostV1BulkEmploymentJobsResponse = + PostV1BulkEmploymentJobsResponses[keyof PostV1BulkEmploymentJobsResponses]; -export type GetV1ContractorsCorTerminationRequestsData = { +export type GetV1ContractAmendmentsData = { body?: never; + headers: { + /** + * Requires a Company-scoped access token obtained through the Authorization Code flow or the Refresh Token flow. + * + * The refresh token needs to have been obtained through the Authorization Code flow. + * + */ + Authorization: string; + }; path?: never; query?: { /** - * Filter termination requests by employment ID. + * Employment ID */ - employment_id?: UuidSlug; + employment_id?: string; /** - * Filter termination requests by status. + * Contract Amendment status */ - status?: 'initiated' | 'executed' | 'cancelled'; + status?: ContractAmendmentStatus; /** * Starts fetching records after the given page */ @@ -14540,78 +14402,62 @@ export type GetV1ContractorsCorTerminationRequestsData = { */ page_size?: number; }; - url: '/v1/contractors/cor-termination-requests'; + url: '/v1/contract-amendments'; }; -export type GetV1ContractorsCorTerminationRequestsErrors = { +export type GetV1ContractAmendmentsErrors = { /** - * Forbidden + * Unauthorized */ - 403: ForbiddenResponse; + 401: UnauthorizedResponse; /** * Not Found */ 404: NotFoundResponse; + /** + * Unprocessable Entity + */ + 422: UnprocessableEntityResponse; }; -export type GetV1ContractorsCorTerminationRequestsError = - GetV1ContractorsCorTerminationRequestsErrors[keyof GetV1ContractorsCorTerminationRequestsErrors]; +export type GetV1ContractAmendmentsError = + GetV1ContractAmendmentsErrors[keyof GetV1ContractAmendmentsErrors]; -export type GetV1ContractorsCorTerminationRequestsResponses = { +export type GetV1ContractAmendmentsResponses = { /** * Success */ - 200: IndexCorTerminationRequestsResponse; + 200: ListContractAmendmentResponse; }; -export type GetV1ContractorsCorTerminationRequestsResponse = - GetV1ContractorsCorTerminationRequestsResponses[keyof GetV1ContractorsCorTerminationRequestsResponses]; +export type GetV1ContractAmendmentsResponse = + GetV1ContractAmendmentsResponses[keyof GetV1ContractAmendmentsResponses]; -export type GetV1WebhookEventsData = { - body?: never; - path?: never; - query?: { - /** - * Filter by webhook event type - */ - event_type?: string; - /** - * Filter by delivery status (true = 200, false = 4xx/5xx) - */ - successfully_delivered?: boolean; - /** - * Filter by company ID - */ - company_id?: string; - /** - * Filter by date before (ISO 8601 format) - */ - before?: string; - /** - * Filter by date after (ISO 8601 format) - */ - after?: string; - /** - * Sort order - */ - order?: 'asc' | 'desc'; - /** - * Field to sort by - */ - sort_by?: 'first_triggered_at'; +export type PostV1ContractAmendmentsData = { + /** + * Contract Amendment + */ + body?: CreateContractAmendmentParams; + headers: { /** - * Starts fetching records after the given page + * Requires a Company-scoped access token obtained through the Authorization Code flow or the Refresh Token flow. + * + * The refresh token needs to have been obtained through the Authorization Code flow. + * */ - page?: number; + Authorization: string; + }; + path?: never; + query?: { /** - * Number of items per page + * Version of the form schema */ - page_size?: number; + json_schema_version?: number | 'latest'; }; - url: '/v1/webhook-events'; + url: '/v1/contract-amendments'; }; -export type GetV1WebhookEventsErrors = { +export type PostV1ContractAmendmentsErrors = { /** * Unauthorized */ @@ -14626,20 +14472,20 @@ export type GetV1WebhookEventsErrors = { 422: UnprocessableEntityResponse; }; -export type GetV1WebhookEventsError = - GetV1WebhookEventsErrors[keyof GetV1WebhookEventsErrors]; +export type PostV1ContractAmendmentsError = + PostV1ContractAmendmentsErrors[keyof PostV1ContractAmendmentsErrors]; -export type GetV1WebhookEventsResponses = { +export type PostV1ContractAmendmentsResponses = { /** * Success */ - 200: ListWebhookEventsResponse; + 200: ContractAmendmentResponse; }; -export type GetV1WebhookEventsResponse = - GetV1WebhookEventsResponses[keyof GetV1WebhookEventsResponses]; +export type PostV1ContractAmendmentsResponse = + PostV1ContractAmendmentsResponses[keyof PostV1ContractAmendmentsResponses]; -export type PostV1SandboxCompaniesCompanyIdBypassEligibilityChecksData = { +export type DeleteV1IncentivesRecurringIdData = { body?: never; headers: { /** @@ -14652,15 +14498,15 @@ export type PostV1SandboxCompaniesCompanyIdBypassEligibilityChecksData = { }; path: { /** - * Company ID + * Recurring Incentive ID */ - company_id: string; + id: string; }; query?: never; - url: '/v1/sandbox/companies/{company_id}/bypass-eligibility-checks'; + url: '/v1/incentives/recurring/{id}'; }; -export type PostV1SandboxCompaniesCompanyIdBypassEligibilityChecksErrors = { +export type DeleteV1IncentivesRecurringIdErrors = { /** * Bad Request */ @@ -14683,91 +14529,124 @@ export type PostV1SandboxCompaniesCompanyIdBypassEligibilityChecksErrors = { 429: TooManyRequestsResponse; }; -export type PostV1SandboxCompaniesCompanyIdBypassEligibilityChecksError = - PostV1SandboxCompaniesCompanyIdBypassEligibilityChecksErrors[keyof PostV1SandboxCompaniesCompanyIdBypassEligibilityChecksErrors]; +export type DeleteV1IncentivesRecurringIdError = + DeleteV1IncentivesRecurringIdErrors[keyof DeleteV1IncentivesRecurringIdErrors]; -export type PostV1SandboxCompaniesCompanyIdBypassEligibilityChecksResponses = { +export type DeleteV1IncentivesRecurringIdResponses = { /** * Success */ - 200: SuccessResponse; + 200: DeleteRecurringIncentiveResponse; }; -export type PostV1SandboxCompaniesCompanyIdBypassEligibilityChecksResponse = - PostV1SandboxCompaniesCompanyIdBypassEligibilityChecksResponses[keyof PostV1SandboxCompaniesCompanyIdBypassEligibilityChecksResponses]; - -export type PostV1SandboxEmploymentsEmploymentIdRiskReserveProofOfPaymentsApproveData = - { - body?: never; - path: { - /** - * Employment ID - */ - employment_id: string; - }; - query?: never; - url: '/v1/sandbox/employments/{employment_id}/risk-reserve-proof-of-payments/approve'; - }; +export type DeleteV1IncentivesRecurringIdResponse = + DeleteV1IncentivesRecurringIdResponses[keyof DeleteV1IncentivesRecurringIdResponses]; -export type PostV1SandboxEmploymentsEmploymentIdRiskReserveProofOfPaymentsApproveErrors = - { - /** - * Bad Request - */ - 400: BadRequestResponse; - /** - * Unauthorized - */ - 401: UnauthorizedResponse; - /** - * Not Found - */ - 404: NotFoundResponse; +export type GetV1BenefitRenewalRequestsBenefitRenewalRequestIdData = { + body?: never; + headers: { /** - * Unprocessable Entity + * Requires a Company-scoped access token obtained through the Authorization Code flow or the Refresh Token flow. + * + * The refresh token needs to have been obtained through the Authorization Code flow. + * */ - 422: UnprocessableEntityResponse; + Authorization: string; + }; + path: { /** - * Too many requests + * Benefit Renewal Request Id */ - 429: TooManyRequestsResponse; + benefit_renewal_request_id: UuidSlug; }; + query?: never; + url: '/v1/benefit-renewal-requests/{benefit_renewal_request_id}'; +}; -export type PostV1SandboxEmploymentsEmploymentIdRiskReserveProofOfPaymentsApproveError = - PostV1SandboxEmploymentsEmploymentIdRiskReserveProofOfPaymentsApproveErrors[keyof PostV1SandboxEmploymentsEmploymentIdRiskReserveProofOfPaymentsApproveErrors]; +export type GetV1BenefitRenewalRequestsBenefitRenewalRequestIdErrors = { + /** + * Unauthorized + */ + 401: UnauthorizedResponse; + /** + * Not Found + */ + 404: NotFoundResponse; + /** + * Unprocessable Entity + */ + 422: UnprocessableEntityResponse; +}; -export type PostV1SandboxEmploymentsEmploymentIdRiskReserveProofOfPaymentsApproveResponses = - { +export type GetV1BenefitRenewalRequestsBenefitRenewalRequestIdError = + GetV1BenefitRenewalRequestsBenefitRenewalRequestIdErrors[keyof GetV1BenefitRenewalRequestsBenefitRenewalRequestIdErrors]; + +export type GetV1BenefitRenewalRequestsBenefitRenewalRequestIdResponses = { + /** + * Success + */ + 200: BenefitRenewalRequestsBenefitRenewalRequestResponse; +}; + +export type GetV1BenefitRenewalRequestsBenefitRenewalRequestIdResponse = + GetV1BenefitRenewalRequestsBenefitRenewalRequestIdResponses[keyof GetV1BenefitRenewalRequestsBenefitRenewalRequestIdResponses]; + +export type PostV1BenefitRenewalRequestsBenefitRenewalRequestIdData = { + /** + * Benefit Renewal Request Response + */ + body?: BenefitRenewalRequestsUpdateBenefitRenewalRequest; + headers: { /** - * Success + * Requires a Company-scoped access token obtained through the Authorization Code flow or the Refresh Token flow. + * + * The refresh token needs to have been obtained through the Authorization Code flow. + * */ - 200: RiskReserveProofOfPaymentResponse; + Authorization: string; + }; + path: { + /** + * Benefit Renewal Request Id + */ + benefit_renewal_request_id: UuidSlug; }; - -export type PostV1SandboxEmploymentsEmploymentIdRiskReserveProofOfPaymentsApproveResponse = - PostV1SandboxEmploymentsEmploymentIdRiskReserveProofOfPaymentsApproveResponses[keyof PostV1SandboxEmploymentsEmploymentIdRiskReserveProofOfPaymentsApproveResponses]; - -export type GetV1TestSchemaData = { - body?: never; - path?: never; query?: { /** * Version of the form schema */ json_schema_version?: number | 'latest'; }; - url: '/v1/test-schema'; + url: '/v1/benefit-renewal-requests/{benefit_renewal_request_id}'; }; -export type GetV1TestSchemaResponses = { +export type PostV1BenefitRenewalRequestsBenefitRenewalRequestIdErrors = { + /** + * Unauthorized + */ + 401: UnauthorizedResponse; + /** + * Unprocessable Entity + */ + 422: UnprocessableEntityResponse; + /** + * Unprocessable Entity + */ + 429: TooManyRequestsResponse; +}; + +export type PostV1BenefitRenewalRequestsBenefitRenewalRequestIdError = + PostV1BenefitRenewalRequestsBenefitRenewalRequestIdErrors[keyof PostV1BenefitRenewalRequestsBenefitRenewalRequestIdErrors]; + +export type PostV1BenefitRenewalRequestsBenefitRenewalRequestIdResponses = { /** * Success */ - 200: CompanyFormResponse; + 200: SuccessResponse; }; -export type GetV1TestSchemaResponse = - GetV1TestSchemaResponses[keyof GetV1TestSchemaResponses]; +export type PostV1BenefitRenewalRequestsBenefitRenewalRequestIdResponse = + PostV1BenefitRenewalRequestsBenefitRenewalRequestIdResponses[keyof PostV1BenefitRenewalRequestsBenefitRenewalRequestIdResponses]; export type GetV1CountriesCountryCodeHolidaysYearData = { body?: never; @@ -14827,26 +14706,28 @@ export type GetV1CountriesCountryCodeHolidaysYearResponses = { export type GetV1CountriesCountryCodeHolidaysYearResponse = GetV1CountriesCountryCodeHolidaysYearResponses[keyof GetV1CountriesCountryCodeHolidaysYearResponses]; -export type PostV1TimeoffTimeoffIdCancelData = { - /** - * CancelTimeoff - */ - body: CancelTimeoffParams; +export type GetV1EmploymentsEmploymentIdCustomFieldsData = { + body?: never; path: { /** - * Time Off ID + * Employment ID */ - timeoff_id: string; + employment_id: string; }; - query?: never; - url: '/v1/timeoff/{timeoff_id}/cancel'; + query?: { + /** + * Starts fetching records after the given page + */ + page?: number; + /** + * Number of items per page + */ + page_size?: number; + }; + url: '/v1/employments/{employment_id}/custom-fields'; }; -export type PostV1TimeoffTimeoffIdCancelErrors = { - /** - * Bad Request - */ - 400: BadRequestResponse; +export type GetV1EmploymentsEmploymentIdCustomFieldsErrors = { /** * Unauthorized */ @@ -14859,73 +14740,34 @@ export type PostV1TimeoffTimeoffIdCancelErrors = { * Unprocessable Entity */ 422: UnprocessableEntityResponse; - /** - * Unprocessable Entity - */ - 429: TooManyRequestsResponse; }; -export type PostV1TimeoffTimeoffIdCancelError = - PostV1TimeoffTimeoffIdCancelErrors[keyof PostV1TimeoffTimeoffIdCancelErrors]; +export type GetV1EmploymentsEmploymentIdCustomFieldsError = + GetV1EmploymentsEmploymentIdCustomFieldsErrors[keyof GetV1EmploymentsEmploymentIdCustomFieldsErrors]; -export type PostV1TimeoffTimeoffIdCancelResponses = { +export type GetV1EmploymentsEmploymentIdCustomFieldsResponses = { /** * Success */ - 200: TimeoffResponse; + 200: ListEmploymentCustomFieldValuePaginatedResponse; }; -export type PostV1TimeoffTimeoffIdCancelResponse = - PostV1TimeoffTimeoffIdCancelResponses[keyof PostV1TimeoffTimeoffIdCancelResponses]; +export type GetV1EmploymentsEmploymentIdCustomFieldsResponse = + GetV1EmploymentsEmploymentIdCustomFieldsResponses[keyof GetV1EmploymentsEmploymentIdCustomFieldsResponses]; -export type GetV1EmploymentsEmploymentIdJobData = { +export type GetV1TimesheetsIdData = { body?: never; path: { /** - * Employment ID + * Timesheet ID */ - employment_id: string; + id: string; }; query?: never; - url: '/v1/employments/{employment_id}/job'; -}; - -export type GetV1EmploymentsEmploymentIdJobErrors = { - /** - * Unauthorized - */ - 401: UnauthorizedResponse; - /** - * Not Found - */ - 404: NotFoundResponse; - /** - * Unprocessable Entity - */ - 422: UnprocessableEntityResponse; -}; - -export type GetV1EmploymentsEmploymentIdJobError = - GetV1EmploymentsEmploymentIdJobErrors[keyof GetV1EmploymentsEmploymentIdJobErrors]; - -export type GetV1EmploymentsEmploymentIdJobResponses = { - /** - * Success - */ - 200: EmploymentJobResponse; -}; - -export type GetV1EmploymentsEmploymentIdJobResponse = - GetV1EmploymentsEmploymentIdJobResponses[keyof GetV1EmploymentsEmploymentIdJobResponses]; - -export type GetV1PricingPlanPartnerTemplatesData = { - body?: never; - path?: never; - query?: never; - url: '/v1/pricing-plan-partner-templates'; + url: '/v1/timesheets/{id}'; }; -export type GetV1PricingPlanPartnerTemplatesErrors = { +export type GetV1TimesheetsIdErrors = { /** * Unauthorized */ @@ -14940,44 +14782,53 @@ export type GetV1PricingPlanPartnerTemplatesErrors = { 422: UnprocessableEntityResponse; }; -export type GetV1PricingPlanPartnerTemplatesError = - GetV1PricingPlanPartnerTemplatesErrors[keyof GetV1PricingPlanPartnerTemplatesErrors]; +export type GetV1TimesheetsIdError = + GetV1TimesheetsIdErrors[keyof GetV1TimesheetsIdErrors]; -export type GetV1PricingPlanPartnerTemplatesResponses = { +export type GetV1TimesheetsIdResponses = { /** * Success */ - 200: ListPricingPlanPartnerTemplatesResponse; + 200: TimesheetResponse; }; -export type GetV1PricingPlanPartnerTemplatesResponse = - GetV1PricingPlanPartnerTemplatesResponses[keyof GetV1PricingPlanPartnerTemplatesResponses]; +export type GetV1TimesheetsIdResponse = + GetV1TimesheetsIdResponses[keyof GetV1TimesheetsIdResponses]; -export type GetV1PayrollCalendarsData = { +export type GetV1CompanyManagersData = { body?: never; - path?: never; - query?: { + headers: { /** - * Filter payroll calendars by country code + * Requires a Company-scoped access token obtained through the Authorization Code flow or the Refresh Token flow. + * + * The refresh token needs to have been obtained through the Authorization Code flow. + * */ - country_code?: string; + Authorization: string; + }; + path?: never; + query?: { /** - * Filter payroll calendars by year + * A Company ID to filter the results (only applicable for Integration Partners). */ - year?: string; + company_id?: string; /** * Starts fetching records after the given page */ page?: number; /** - * Number of items per page + * Change the amount of records returned per page, defaults to 20, limited to 100 */ page_size?: number; }; - url: '/v1/payroll-calendars'; + url: '/v1/company-managers'; }; -export type GetV1PayrollCalendarsErrors = { +export type GetV1CompanyManagersErrors = { + /** + * Bad Request + */ + 400: BadRequestResponse; /** * Unauthorized */ @@ -14990,37 +14841,53 @@ export type GetV1PayrollCalendarsErrors = { * Unprocessable Entity */ 422: UnprocessableEntityResponse; + /** + * Too many requests + */ + 429: TooManyRequestsResponse; }; -export type GetV1PayrollCalendarsError = - GetV1PayrollCalendarsErrors[keyof GetV1PayrollCalendarsErrors]; +export type GetV1CompanyManagersError = + GetV1CompanyManagersErrors[keyof GetV1CompanyManagersErrors]; -export type GetV1PayrollCalendarsResponses = { +export type GetV1CompanyManagersResponses = { /** * Success */ - 200: PayrollCalendarsEorResponse; + 200: CompanyManagersResponse; }; -export type GetV1PayrollCalendarsResponse = - GetV1PayrollCalendarsResponses[keyof GetV1PayrollCalendarsResponses]; +export type GetV1CompanyManagersResponse = + GetV1CompanyManagersResponses[keyof GetV1CompanyManagersResponses]; -export type PatchV1EmployeeTimeoffId2Data = { +export type PostV1CompanyManagersData = { /** - * UpdateTimeoff + * Company Manager params */ - body: UpdateEmployeeTimeoffParams; - path: { + body?: CompanyManagerParams; + headers: { /** - * Timeoff ID + * Requires a Company-scoped access token obtained through the Authorization Code flow or the Refresh Token flow. + * + * The refresh token needs to have been obtained through the Authorization Code flow. + * */ - id: string; + Authorization: string; }; - query?: never; - url: '/v1/employee/timeoff/{id}'; + path?: never; + query?: { + /** + * Complementary action(s) to perform when creating a company manager: + * + * - `no_invite` skips the email invitation step + * + */ + actions?: string; + }; + url: '/v1/company-managers'; }; -export type PatchV1EmployeeTimeoffId2Errors = { +export type PostV1CompanyManagersErrors = { /** * Bad Request */ @@ -15038,52 +14905,78 @@ export type PatchV1EmployeeTimeoffId2Errors = { */ 422: UnprocessableEntityResponse; /** - * Unprocessable Entity + * Too many requests */ 429: TooManyRequestsResponse; }; -export type PatchV1EmployeeTimeoffId2Error = - PatchV1EmployeeTimeoffId2Errors[keyof PatchV1EmployeeTimeoffId2Errors]; +export type PostV1CompanyManagersError = + PostV1CompanyManagersErrors[keyof PostV1CompanyManagersErrors]; -export type PatchV1EmployeeTimeoffId2Responses = { +export type PostV1CompanyManagersResponses = { /** * Success */ - 200: TimeoffResponse; + 201: CompanyManagerData; }; -export type PatchV1EmployeeTimeoffId2Response = - PatchV1EmployeeTimeoffId2Responses[keyof PatchV1EmployeeTimeoffId2Responses]; +export type PostV1CompanyManagersResponse = + PostV1CompanyManagersResponses[keyof PostV1CompanyManagersResponses]; -export type PatchV1EmployeeTimeoffIdData = { +export type GetV1EmployeeLeavePoliciesSummaryData = { + body?: never; + path?: never; + query?: never; + url: '/v1/employee/leave-policies/summary'; +}; + +export type GetV1EmployeeLeavePoliciesSummaryErrors = { /** - * UpdateTimeoff + * Unauthorized */ - body: UpdateEmployeeTimeoffParams; - path: { - /** - * Timeoff ID - */ - id: string; - }; + 401: UnauthorizedResponse; + /** + * Not Found + */ + 404: NotFoundResponse; +}; + +export type GetV1EmployeeLeavePoliciesSummaryError = + GetV1EmployeeLeavePoliciesSummaryErrors[keyof GetV1EmployeeLeavePoliciesSummaryErrors]; + +export type GetV1EmployeeLeavePoliciesSummaryResponses = { + /** + * Success + */ + 200: ListLeavePoliciesSummaryResponse; +}; + +export type GetV1EmployeeLeavePoliciesSummaryResponse = + GetV1EmployeeLeavePoliciesSummaryResponses[keyof GetV1EmployeeLeavePoliciesSummaryResponses]; + +export type PostV1PayItemsBulkData = { + /** + * Pay Items + */ + body: BulkCreatePayItemsParams; + path?: never; query?: never; - url: '/v1/employee/timeoff/{id}'; + url: '/v1/pay-items/bulk'; }; -export type PatchV1EmployeeTimeoffIdErrors = { +export type PostV1PayItemsBulkErrors = { /** * Bad Request */ 400: BadRequestResponse; /** - * Unauthorized + * Forbidden */ - 401: UnauthorizedResponse; + 403: ForbiddenResponse; /** - * Not Found + * Conflict */ - 404: NotFoundResponse; + 409: ConflictResponse; /** * Unprocessable Entity */ @@ -15094,61 +14987,32 @@ export type PatchV1EmployeeTimeoffIdErrors = { 429: TooManyRequestsResponse; }; -export type PatchV1EmployeeTimeoffIdError = - PatchV1EmployeeTimeoffIdErrors[keyof PatchV1EmployeeTimeoffIdErrors]; +export type PostV1PayItemsBulkError = + PostV1PayItemsBulkErrors[keyof PostV1PayItemsBulkErrors]; -export type PatchV1EmployeeTimeoffIdResponses = { +export type PostV1PayItemsBulkResponses = { /** * Success */ - 200: TimeoffResponse; + 200: BulkCreatePayItemsResponse; }; -export type PatchV1EmployeeTimeoffIdResponse = - PatchV1EmployeeTimeoffIdResponses[keyof PatchV1EmployeeTimeoffIdResponses]; +export type PostV1PayItemsBulkResponse = + PostV1PayItemsBulkResponses[keyof PostV1PayItemsBulkResponses]; -export type GetV1IncentivesRecurringData = { +export type GetV1TravelLetterRequestsIdData = { body?: never; - headers: { - /** - * Requires a Company-scoped access token obtained through the Authorization Code flow or the Refresh Token flow. - * - * The refresh token needs to have been obtained through the Authorization Code flow. - * - */ - Authorization: string; - }; - path?: never; - query?: { - /** - * Filter by recurring incentive status: active or deactive. - */ - status?: string; - /** - * Filter by recurring incentive type. - */ - type?: string; - /** - * Filter by recurring incentives that contain the value in their notes. - */ - note?: string; - /** - * Starts fetching records after the given page - */ - page?: number; + path: { /** - * Change the amount of records returned per page, defaults to 20, limited to 100 + * travel letter request ID */ - page_size?: number; + id: UuidSlug; }; - url: '/v1/incentives/recurring'; + query?: never; + url: '/v1/travel-letter-requests/{id}'; }; -export type GetV1IncentivesRecurringErrors = { - /** - * Bad Request - */ - 400: BadRequestResponse; +export type GetV1TravelLetterRequestsIdErrors = { /** * Unauthorized */ @@ -15161,49 +15025,37 @@ export type GetV1IncentivesRecurringErrors = { * Unprocessable Entity */ 422: UnprocessableEntityResponse; - /** - * Too many requests - */ - 429: TooManyRequestsResponse; }; -export type GetV1IncentivesRecurringError = - GetV1IncentivesRecurringErrors[keyof GetV1IncentivesRecurringErrors]; +export type GetV1TravelLetterRequestsIdError = + GetV1TravelLetterRequestsIdErrors[keyof GetV1TravelLetterRequestsIdErrors]; -export type GetV1IncentivesRecurringResponses = { +export type GetV1TravelLetterRequestsIdResponses = { /** * Success */ - 201: ListRecurringIncentivesResponse; + 200: TravelLetterResponse; }; -export type GetV1IncentivesRecurringResponse = - GetV1IncentivesRecurringResponses[keyof GetV1IncentivesRecurringResponses]; +export type GetV1TravelLetterRequestsIdResponse = + GetV1TravelLetterRequestsIdResponses[keyof GetV1TravelLetterRequestsIdResponses]; -export type PostV1IncentivesRecurringData = { +export type PatchV1TravelLetterRequestsId2Data = { /** - * RecurringIncentive + * Travel letter Request */ - body?: CreateRecurringIncentiveParams; - headers: { + body: UpdateTravelLetterRequestParams; + path: { /** - * Requires a Company-scoped access token obtained through the Authorization Code flow or the Refresh Token flow. - * - * The refresh token needs to have been obtained through the Authorization Code flow. - * + * Travel letter Request ID */ - Authorization: string; + id: string; }; - path?: never; query?: never; - url: '/v1/incentives/recurring'; + url: '/v1/travel-letter-requests/{id}'; }; -export type PostV1IncentivesRecurringErrors = { - /** - * Bad Request - */ - 400: BadRequestResponse; +export type PatchV1TravelLetterRequestsId2Errors = { /** * Unauthorized */ @@ -15216,93 +15068,141 @@ export type PostV1IncentivesRecurringErrors = { * Unprocessable Entity */ 422: UnprocessableEntityResponse; - /** - * Too many requests - */ - 429: TooManyRequestsResponse; }; -export type PostV1IncentivesRecurringError = - PostV1IncentivesRecurringErrors[keyof PostV1IncentivesRecurringErrors]; +export type PatchV1TravelLetterRequestsId2Error = + PatchV1TravelLetterRequestsId2Errors[keyof PatchV1TravelLetterRequestsId2Errors]; -export type PostV1IncentivesRecurringResponses = { +export type PatchV1TravelLetterRequestsId2Responses = { /** * Success */ - 201: RecurringIncentiveResponse; + 200: TravelLetterResponse; }; -export type PostV1IncentivesRecurringResponse = - PostV1IncentivesRecurringResponses[keyof PostV1IncentivesRecurringResponses]; +export type PatchV1TravelLetterRequestsId2Response = + PatchV1TravelLetterRequestsId2Responses[keyof PatchV1TravelLetterRequestsId2Responses]; -export type PostV1SandboxBenefitRenewalRequestsData = { +export type PatchV1TravelLetterRequestsIdData = { /** - * Benefit Renewal Request + * Travel letter Request */ - body: BenefitRenewalRequestsCreateBenefitRenewalRequest; - headers: { + body: UpdateTravelLetterRequestParams; + path: { /** - * Requires a Company-scoped access token obtained through the Authorization Code flow or the Refresh Token flow. - * - * The refresh token needs to have been obtained through the Authorization Code flow. - * + * Travel letter Request ID */ - Authorization: string; + id: string; }; - path?: never; query?: never; - url: '/v1/sandbox/benefit-renewal-requests'; + url: '/v1/travel-letter-requests/{id}'; }; -export type PostV1SandboxBenefitRenewalRequestsErrors = { - /** - * Bad Request - */ - 400: BadRequestResponse; +export type PatchV1TravelLetterRequestsIdErrors = { /** * Unauthorized */ 401: UnauthorizedResponse; /** - * Unprocessable Entity + * Not Found */ - 422: UnprocessableEntityResponse; + 404: NotFoundResponse; /** * Unprocessable Entity */ - 429: TooManyRequestsResponse; + 422: UnprocessableEntityResponse; }; -export type PostV1SandboxBenefitRenewalRequestsError = - PostV1SandboxBenefitRenewalRequestsErrors[keyof PostV1SandboxBenefitRenewalRequestsErrors]; +export type PatchV1TravelLetterRequestsIdError = + PatchV1TravelLetterRequestsIdErrors[keyof PatchV1TravelLetterRequestsIdErrors]; -export type PostV1SandboxBenefitRenewalRequestsResponses = { +export type PatchV1TravelLetterRequestsIdResponses = { /** * Success */ - 200: BenefitRenewalRequestsCreateBenefitRenewalRequestResponse; + 200: TravelLetterResponse; }; -export type PostV1SandboxBenefitRenewalRequestsResponse = - PostV1SandboxBenefitRenewalRequestsResponses[keyof PostV1SandboxBenefitRenewalRequestsResponses]; +export type PatchV1TravelLetterRequestsIdResponse = + PatchV1TravelLetterRequestsIdResponses[keyof PatchV1TravelLetterRequestsIdResponses]; -export type GetV1ContractorsEmploymentsEmploymentIdContractDocumentsIdData = { +export type PostV1OnboardingEmploymentsEmploymentIdPreOnboardingRequirementsRequirementSlugDocumentsData = + { + body?: never; + path: { + /** + * Employment ID + */ + employment_id: string; + /** + * Pre-onboarding requirement slug + */ + requirement_slug: string; + }; + query?: never; + url: '/v1/onboarding/employments/{employment_id}/pre-onboarding-requirements/{requirement_slug}/documents'; + }; + +export type PostV1OnboardingEmploymentsEmploymentIdPreOnboardingRequirementsRequirementSlugDocumentsErrors = + { + /** + * Unauthorized + */ + 401: UnauthorizedResponse; + /** + * Forbidden + */ + 403: ForbiddenResponse; + /** + * Not Found + */ + 404: NotFoundResponse; + /** + * Unprocessable Entity + */ + 422: UnprocessableEntityResponse; + }; + +export type PostV1OnboardingEmploymentsEmploymentIdPreOnboardingRequirementsRequirementSlugDocumentsError = + PostV1OnboardingEmploymentsEmploymentIdPreOnboardingRequirementsRequirementSlugDocumentsErrors[keyof PostV1OnboardingEmploymentsEmploymentIdPreOnboardingRequirementsRequirementSlugDocumentsErrors]; + +export type PostV1OnboardingEmploymentsEmploymentIdPreOnboardingRequirementsRequirementSlugDocumentsResponses = + { + /** + * Success + */ + 200: CreatePreOnboardingDocumentResponse; + }; + +export type PostV1OnboardingEmploymentsEmploymentIdPreOnboardingRequirementsRequirementSlugDocumentsResponse = + PostV1OnboardingEmploymentsEmploymentIdPreOnboardingRequirementsRequirementSlugDocumentsResponses[keyof PostV1OnboardingEmploymentsEmploymentIdPreOnboardingRequirementsRequirementSlugDocumentsResponses]; + +export type PostV1SandboxCompaniesCompanyIdBypassEligibilityChecksData = { body?: never; - path: { + headers: { /** - * Employment ID + * Requires a Company-scoped access token obtained through the Authorization Code flow or the Refresh Token flow. + * + * The refresh token needs to have been obtained through the Authorization Code flow. + * */ - employment_id: string; + Authorization: string; + }; + path: { /** - * Document ID + * Company ID */ - id: string; + company_id: string; }; query?: never; - url: '/v1/contractors/employments/{employment_id}/contract-documents/{id}'; + url: '/v1/sandbox/companies/{company_id}/bypass-eligibility-checks'; }; -export type GetV1ContractorsEmploymentsEmploymentIdContractDocumentsIdErrors = { +export type PostV1SandboxCompaniesCompanyIdBypassEligibilityChecksErrors = { + /** + * Bad Request + */ + 400: BadRequestResponse; /** * Unauthorized */ @@ -15315,52 +15215,69 @@ export type GetV1ContractorsEmploymentsEmploymentIdContractDocumentsIdErrors = { * Unprocessable Entity */ 422: UnprocessableEntityResponse; + /** + * Too many requests + */ + 429: TooManyRequestsResponse; }; -export type GetV1ContractorsEmploymentsEmploymentIdContractDocumentsIdError = - GetV1ContractorsEmploymentsEmploymentIdContractDocumentsIdErrors[keyof GetV1ContractorsEmploymentsEmploymentIdContractDocumentsIdErrors]; +export type PostV1SandboxCompaniesCompanyIdBypassEligibilityChecksError = + PostV1SandboxCompaniesCompanyIdBypassEligibilityChecksErrors[keyof PostV1SandboxCompaniesCompanyIdBypassEligibilityChecksErrors]; -export type GetV1ContractorsEmploymentsEmploymentIdContractDocumentsIdResponses = - { - /** - * Success - */ - 200: ContractDocumentResponse; - }; +export type PostV1SandboxCompaniesCompanyIdBypassEligibilityChecksResponses = { + /** + * Success + */ + 200: SuccessResponse; +}; -export type GetV1ContractorsEmploymentsEmploymentIdContractDocumentsIdResponse = - GetV1ContractorsEmploymentsEmploymentIdContractDocumentsIdResponses[keyof GetV1ContractorsEmploymentsEmploymentIdContractDocumentsIdResponses]; +export type PostV1SandboxCompaniesCompanyIdBypassEligibilityChecksResponse = + PostV1SandboxCompaniesCompanyIdBypassEligibilityChecksResponses[keyof PostV1SandboxCompaniesCompanyIdBypassEligibilityChecksResponses]; -export type GetV1EmploymentsEmploymentIdContractDocumentsData = { +export type GetV1EmployeeLeavePoliciesData = { + body?: never; + path?: never; + query?: never; + url: '/v1/employee/leave-policies'; +}; + +export type GetV1EmployeeLeavePoliciesErrors = { + /** + * Unauthorized + */ + 401: UnauthorizedResponse; + /** + * Not Found + */ + 404: NotFoundResponse; +}; + +export type GetV1EmployeeLeavePoliciesError = + GetV1EmployeeLeavePoliciesErrors[keyof GetV1EmployeeLeavePoliciesErrors]; + +export type GetV1EmployeeLeavePoliciesResponses = { + /** + * Success + */ + 200: ListLeavePoliciesDetailsResponse; +}; + +export type GetV1EmployeeLeavePoliciesResponse = + GetV1EmployeeLeavePoliciesResponses[keyof GetV1EmployeeLeavePoliciesResponses]; + +export type GetV1CompaniesCompanyIdWebhookCallbacksData = { body?: never; path: { /** - * Employment ID - */ - employment_id: string; - }; - query?: { - /** - * Filter by contract document statuses - */ - statuses?: Array; - /** - * Exclude contract documents with specific statuses - */ - except_statuses?: Array; - /** - * Starts fetching records after the given page - */ - page?: number; - /** - * Number of items per page + * Company ID */ - page_size?: number; + company_id: string; }; - url: '/v1/employments/{employment_id}/contract-documents'; + query?: never; + url: '/v1/companies/{company_id}/webhook-callbacks'; }; -export type GetV1EmploymentsEmploymentIdContractDocumentsErrors = { +export type GetV1CompaniesCompanyIdWebhookCallbacksErrors = { /** * Unauthorized */ @@ -15369,26 +15286,22 @@ export type GetV1EmploymentsEmploymentIdContractDocumentsErrors = { * Not Found */ 404: NotFoundResponse; - /** - * Unprocessable Entity - */ - 422: UnprocessableEntityResponse; }; -export type GetV1EmploymentsEmploymentIdContractDocumentsError = - GetV1EmploymentsEmploymentIdContractDocumentsErrors[keyof GetV1EmploymentsEmploymentIdContractDocumentsErrors]; +export type GetV1CompaniesCompanyIdWebhookCallbacksError = + GetV1CompaniesCompanyIdWebhookCallbacksErrors[keyof GetV1CompaniesCompanyIdWebhookCallbacksErrors]; -export type GetV1EmploymentsEmploymentIdContractDocumentsResponses = { +export type GetV1CompaniesCompanyIdWebhookCallbacksResponses = { /** * Success */ - 200: IndexContractDocumentsResponse; + 200: ListWebhookCallbacksResponse; }; -export type GetV1EmploymentsEmploymentIdContractDocumentsResponse = - GetV1EmploymentsEmploymentIdContractDocumentsResponses[keyof GetV1EmploymentsEmploymentIdContractDocumentsResponses]; +export type GetV1CompaniesCompanyIdWebhookCallbacksResponse = + GetV1CompaniesCompanyIdWebhookCallbacksResponses[keyof GetV1CompaniesCompanyIdWebhookCallbacksResponses]; -export type GetV1ExpensesData = { +export type GetV1BillingDocumentsBillingDocumentIdPdfData = { body?: never; headers: { /** @@ -15399,25 +15312,17 @@ export type GetV1ExpensesData = { */ Authorization: string; }; - path?: never; - query?: { - /** - * Starts fetching records after the given page - */ - page?: number; + path: { /** - * Change the amount of records returned per page, defaults to 20, limited to 100 + * The billing document's ID */ - page_size?: number; + billing_document_id: string; }; - url: '/v1/expenses'; + query?: never; + url: '/v1/billing-documents/{billing_document_id}/pdf'; }; -export type GetV1ExpensesErrors = { - /** - * Bad Request - */ - 400: BadRequestResponse; +export type GetV1BillingDocumentsBillingDocumentIdPdfErrors = { /** * Unauthorized */ @@ -15430,29 +15335,23 @@ export type GetV1ExpensesErrors = { * Unprocessable Entity */ 422: UnprocessableEntityResponse; - /** - * Too many requests - */ - 429: TooManyRequestsResponse; }; -export type GetV1ExpensesError = GetV1ExpensesErrors[keyof GetV1ExpensesErrors]; +export type GetV1BillingDocumentsBillingDocumentIdPdfError = + GetV1BillingDocumentsBillingDocumentIdPdfErrors[keyof GetV1BillingDocumentsBillingDocumentIdPdfErrors]; -export type GetV1ExpensesResponses = { +export type GetV1BillingDocumentsBillingDocumentIdPdfResponses = { /** * Success */ - 201: ListExpenseResponse; + 200: GenericFile; }; -export type GetV1ExpensesResponse = - GetV1ExpensesResponses[keyof GetV1ExpensesResponses]; +export type GetV1BillingDocumentsBillingDocumentIdPdfResponse = + GetV1BillingDocumentsBillingDocumentIdPdfResponses[keyof GetV1BillingDocumentsBillingDocumentIdPdfResponses]; -export type PostV1ExpensesData = { - /** - * Expenses - */ - body?: ParamsToCreateExpense; +export type DeleteV1WebhookCallbacksIdData = { + body?: never; headers: { /** * Requires a Company-scoped access token obtained through the Authorization Code flow or the Refresh Token flow. @@ -15462,16 +15361,17 @@ export type PostV1ExpensesData = { */ Authorization: string; }; - path?: never; + path: { + /** + * Webhook Callback ID + */ + id: string; + }; query?: never; - url: '/v1/expenses'; + url: '/v1/webhook-callbacks/{id}'; }; -export type PostV1ExpensesErrors = { - /** - * Bad Request - */ - 400: BadRequestResponse; +export type DeleteV1WebhookCallbacksIdErrors = { /** * Unauthorized */ @@ -15484,79 +15384,37 @@ export type PostV1ExpensesErrors = { * Unprocessable Entity */ 422: UnprocessableEntityResponse; - /** - * Too many requests - */ - 429: TooManyRequestsResponse; }; -export type PostV1ExpensesError = - PostV1ExpensesErrors[keyof PostV1ExpensesErrors]; +export type DeleteV1WebhookCallbacksIdError = + DeleteV1WebhookCallbacksIdErrors[keyof DeleteV1WebhookCallbacksIdErrors]; -export type PostV1ExpensesResponses = { +export type DeleteV1WebhookCallbacksIdResponses = { /** * Success */ - 201: ExpenseResponse; + 200: SuccessResponse; }; -export type PostV1ExpensesResponse = - PostV1ExpensesResponses[keyof PostV1ExpensesResponses]; - -export type GetV1SsoConfigurationData = { - body?: never; - path?: never; - query?: never; - url: '/v1/sso-configuration'; -}; +export type DeleteV1WebhookCallbacksIdResponse = + DeleteV1WebhookCallbacksIdResponses[keyof DeleteV1WebhookCallbacksIdResponses]; -export type GetV1SsoConfigurationErrors = { - /** - * Bad Request - */ - 400: BadRequestResponse; - /** - * Unauthorized - */ - 401: UnauthorizedResponse; - /** - * Not Found - */ - 404: NotFoundResponse; - /** - * Unprocessable Entity - */ - 429: TooManyRequestsResponse; -}; - -export type GetV1SsoConfigurationError = - GetV1SsoConfigurationErrors[keyof GetV1SsoConfigurationErrors]; - -export type GetV1SsoConfigurationResponses = { - /** - * Success - */ - 200: SsoConfigurationResponse; -}; - -export type GetV1SsoConfigurationResponse = - GetV1SsoConfigurationResponses[keyof GetV1SsoConfigurationResponses]; - -export type PostV1SsoConfigurationData = { +export type PatchV1WebhookCallbacksIdData = { /** - * CreateSSOConfiguration + * WebhookCallback */ - body: CreateSsoConfigurationParams; - path?: never; + body?: UpdateWebhookCallbackParams; + path: { + /** + * Webhook Callback ID + */ + id: string; + }; query?: never; - url: '/v1/sso-configuration'; + url: '/v1/webhook-callbacks/{id}'; }; -export type PostV1SsoConfigurationErrors = { - /** - * Bad Request - */ - 400: BadRequestResponse; +export type PatchV1WebhookCallbacksIdErrors = { /** * Unauthorized */ @@ -15565,49 +15423,41 @@ export type PostV1SsoConfigurationErrors = { * Not Found */ 404: NotFoundResponse; - /** - * Conflict - */ - 409: ConflictResponse; /** * Unprocessable Entity */ 422: UnprocessableEntityResponse; - /** - * Unprocessable Entity - */ - 429: TooManyRequestsResponse; }; -export type PostV1SsoConfigurationError = - PostV1SsoConfigurationErrors[keyof PostV1SsoConfigurationErrors]; +export type PatchV1WebhookCallbacksIdError = + PatchV1WebhookCallbacksIdErrors[keyof PatchV1WebhookCallbacksIdErrors]; -export type PostV1SsoConfigurationResponses = { +export type PatchV1WebhookCallbacksIdResponses = { /** - * Created + * Success */ - 201: CreateSsoConfigurationResponse; + 200: WebhookCallbackResponse; }; -export type PostV1SsoConfigurationResponse = - PostV1SsoConfigurationResponses[keyof PostV1SsoConfigurationResponses]; +export type PatchV1WebhookCallbacksIdResponse = + PatchV1WebhookCallbacksIdResponses[keyof PatchV1WebhookCallbacksIdResponses]; -export type PostV1ContractorsEmploymentsEmploymentIdTimesheetsData = { - /** - * ContractorCreateTimesheetParams - */ - body: ContractorCreateTimesheetParams; - path: { +export type GetV1CountriesData = { + body?: never; + headers: { /** - * Contractor employment ID + * This endpoint works with any of the access tokens provided. You can use an access + * token obtained through the Client Credentials flow, the Authorization Code flow, or the Refresh Token flow. + * */ - employment_id: string; + Authorization: string; }; + path?: never; query?: never; - url: '/v1/contractors/employments/{employment_id}/timesheets'; + url: '/v1/countries'; }; -export type PostV1ContractorsEmploymentsEmploymentIdTimesheetsErrors = { +export type GetV1CountriesErrors = { /** * Bad Request */ @@ -15616,10 +15466,6 @@ export type PostV1ContractorsEmploymentsEmploymentIdTimesheetsErrors = { * Unauthorized */ 401: UnauthorizedResponse; - /** - * Forbidden - */ - 403: ForbiddenResponse; /** * Not Found */ @@ -15628,165 +15474,122 @@ export type PostV1ContractorsEmploymentsEmploymentIdTimesheetsErrors = { * Unprocessable Entity */ 422: UnprocessableEntityResponse; + /** + * Too many requests + */ + 429: TooManyRequestsResponse; }; -export type PostV1ContractorsEmploymentsEmploymentIdTimesheetsError = - PostV1ContractorsEmploymentsEmploymentIdTimesheetsErrors[keyof PostV1ContractorsEmploymentsEmploymentIdTimesheetsErrors]; +export type GetV1CountriesError = + GetV1CountriesErrors[keyof GetV1CountriesErrors]; -export type PostV1ContractorsEmploymentsEmploymentIdTimesheetsResponses = { +export type GetV1CountriesResponses = { /** * Success */ - 200: ContractorTimesheetResponse; + 200: CountriesResponse; }; -export type PostV1ContractorsEmploymentsEmploymentIdTimesheetsResponse = - PostV1ContractorsEmploymentsEmploymentIdTimesheetsResponses[keyof PostV1ContractorsEmploymentsEmploymentIdTimesheetsResponses]; +export type GetV1CountriesResponse = + GetV1CountriesResponses[keyof GetV1CountriesResponses]; -export type PutV1SandboxContractAmendmentsContractAmendmentRequestIdApproveData = +export type GetV1OnboardingEmploymentsEmploymentIdPreOnboardingRequirementsData = { body?: never; path: { /** - * Contract amendment request ID + * Employment ID */ - contract_amendment_request_id: string; + employment_id: string; }; query?: never; - url: '/v1/sandbox/contract-amendments/{contract_amendment_request_id}/approve'; + url: '/v1/onboarding/employments/{employment_id}/pre-onboarding-requirements'; }; -export type PutV1SandboxContractAmendmentsContractAmendmentRequestIdApproveErrors = +export type GetV1OnboardingEmploymentsEmploymentIdPreOnboardingRequirementsErrors = { - /** - * Bad Request - */ - 400: BadRequestResponse; /** * Unauthorized */ 401: UnauthorizedResponse; /** - * Not Found - */ - 404: NotFoundResponse; - /** - * Unprocessable Entity + * Forbidden */ - 422: UnprocessableEntityResponse; + 403: ForbiddenResponse; /** - * Too many requests + * Not Found */ - 429: TooManyRequestsResponse; + 404: NotFoundResponse; }; -export type PutV1SandboxContractAmendmentsContractAmendmentRequestIdApproveError = - PutV1SandboxContractAmendmentsContractAmendmentRequestIdApproveErrors[keyof PutV1SandboxContractAmendmentsContractAmendmentRequestIdApproveErrors]; +export type GetV1OnboardingEmploymentsEmploymentIdPreOnboardingRequirementsError = + GetV1OnboardingEmploymentsEmploymentIdPreOnboardingRequirementsErrors[keyof GetV1OnboardingEmploymentsEmploymentIdPreOnboardingRequirementsErrors]; -export type PutV1SandboxContractAmendmentsContractAmendmentRequestIdApproveResponses = +export type GetV1OnboardingEmploymentsEmploymentIdPreOnboardingRequirementsResponses = { /** * Success */ - 200: ContractAmendmentResponse; + 200: IndexPreOnboardingRequirementsResponse; }; -export type PutV1SandboxContractAmendmentsContractAmendmentRequestIdApproveResponse = - PutV1SandboxContractAmendmentsContractAmendmentRequestIdApproveResponses[keyof PutV1SandboxContractAmendmentsContractAmendmentRequestIdApproveResponses]; - -export type GetV1EmployeeLeavePoliciesData = { - body?: never; - path?: never; - query?: never; - url: '/v1/employee/leave-policies'; -}; - -export type GetV1EmployeeLeavePoliciesErrors = { - /** - * Unauthorized - */ - 401: UnauthorizedResponse; - /** - * Not Found - */ - 404: NotFoundResponse; -}; - -export type GetV1EmployeeLeavePoliciesError = - GetV1EmployeeLeavePoliciesErrors[keyof GetV1EmployeeLeavePoliciesErrors]; - -export type GetV1EmployeeLeavePoliciesResponses = { - /** - * Success - */ - 200: ListLeavePoliciesDetailsResponse; -}; - -export type GetV1EmployeeLeavePoliciesResponse = - GetV1EmployeeLeavePoliciesResponses[keyof GetV1EmployeeLeavePoliciesResponses]; +export type GetV1OnboardingEmploymentsEmploymentIdPreOnboardingRequirementsResponse = + GetV1OnboardingEmploymentsEmploymentIdPreOnboardingRequirementsResponses[keyof GetV1OnboardingEmploymentsEmploymentIdPreOnboardingRequirementsResponses]; -export type GetV1ContractorsEmploymentsEmploymentIdContractorCurrenciesData = { - body?: never; - path: { - /** - * Employment ID - */ - employment_id: string; - }; - query?: { - /** - * Restrict to currencies which payout is guaranteed (default: true) - */ - restrict_to_guaranteed_pay_out_currencies?: boolean; +export type GetV1CompaniesCompanyIdLegalEntitiesLegalEntityIdContractorEligibilityData = + { + body?: never; + path: { + /** + * Company ID + */ + company_id: UuidSlug; + /** + * Legal entity ID + */ + legal_entity_id: UuidSlug; + }; + query?: never; + url: '/v1/companies/{company_id}/legal-entities/{legal_entity_id}/contractor-eligibility'; }; - url: '/v1/contractors/employments/{employment_id}/contractor-currencies'; -}; -export type GetV1ContractorsEmploymentsEmploymentIdContractorCurrenciesErrors = +export type GetV1CompaniesCompanyIdLegalEntitiesLegalEntityIdContractorEligibilityErrors = { /** * Unauthorized */ 401: UnauthorizedResponse; - /** - * Forbidden - */ - 403: ForbiddenResponse; /** * Not Found */ 404: NotFoundResponse; - /** - * Internal Server Error - */ - 500: InternalServerErrorResponse; }; -export type GetV1ContractorsEmploymentsEmploymentIdContractorCurrenciesError = - GetV1ContractorsEmploymentsEmploymentIdContractorCurrenciesErrors[keyof GetV1ContractorsEmploymentsEmploymentIdContractorCurrenciesErrors]; +export type GetV1CompaniesCompanyIdLegalEntitiesLegalEntityIdContractorEligibilityError = + GetV1CompaniesCompanyIdLegalEntitiesLegalEntityIdContractorEligibilityErrors[keyof GetV1CompaniesCompanyIdLegalEntitiesLegalEntityIdContractorEligibilityErrors]; -export type GetV1ContractorsEmploymentsEmploymentIdContractorCurrenciesResponses = +export type GetV1CompaniesCompanyIdLegalEntitiesLegalEntityIdContractorEligibilityResponses = { /** * Success */ - 200: ContractorCurrencyResponse; + 200: ContractorEligibilityResponse; }; -export type GetV1ContractorsEmploymentsEmploymentIdContractorCurrenciesResponse = - GetV1ContractorsEmploymentsEmploymentIdContractorCurrenciesResponses[keyof GetV1ContractorsEmploymentsEmploymentIdContractorCurrenciesResponses]; +export type GetV1CompaniesCompanyIdLegalEntitiesLegalEntityIdContractorEligibilityResponse = + GetV1CompaniesCompanyIdLegalEntitiesLegalEntityIdContractorEligibilityResponses[keyof GetV1CompaniesCompanyIdLegalEntitiesLegalEntityIdContractorEligibilityResponses]; -export type PostV1WebhookEventsReplayData = { +export type PostV1CurrencyConverterEffectiveData = { /** - * WebhookEvent + * Convert currency parameters */ - body: ReplayWebhookEventsParams; + body: ConvertCurrencyParams; path?: never; query?: never; - url: '/v1/webhook-events/replay'; + url: '/v1/currency-converter/effective'; }; -export type PostV1WebhookEventsReplayErrors = { +export type PostV1CurrencyConverterEffectiveErrors = { /** * Unauthorized */ @@ -15801,208 +15604,55 @@ export type PostV1WebhookEventsReplayErrors = { 422: UnprocessableEntityResponse; }; -export type PostV1WebhookEventsReplayError = - PostV1WebhookEventsReplayErrors[keyof PostV1WebhookEventsReplayErrors]; +export type PostV1CurrencyConverterEffectiveError = + PostV1CurrencyConverterEffectiveErrors[keyof PostV1CurrencyConverterEffectiveErrors]; -export type PostV1WebhookEventsReplayResponses = { +export type PostV1CurrencyConverterEffectiveResponses = { /** * Success */ - 200: SuccessResponse; + 200: ConvertCurrencyResponse; }; -export type PostV1WebhookEventsReplayResponse = - PostV1WebhookEventsReplayResponses[keyof PostV1WebhookEventsReplayResponses]; +export type PostV1CurrencyConverterEffectiveResponse = + PostV1CurrencyConverterEffectiveResponses[keyof PostV1CurrencyConverterEffectiveResponses]; -export type PostV1ContractorsEmploymentsEmploymentIdCorTerminationRequestsData = - { - body?: never; - path: { - /** - * Employment ID - */ - employment_id: string; - }; - query?: never; - url: '/v1/contractors/employments/{employment_id}/cor-termination-requests'; - }; - -export type PostV1ContractorsEmploymentsEmploymentIdCorTerminationRequestsErrors = - { - /** - * Bad Request - */ - 400: BadRequestResponse; - /** - * Forbidden - */ - 403: ForbiddenResponse; - /** - * Not Found - */ - 404: NotFoundResponse; - /** - * Unprocessable Entity - */ - 422: UnprocessableEntityResponse; - }; - -export type PostV1ContractorsEmploymentsEmploymentIdCorTerminationRequestsError = - PostV1ContractorsEmploymentsEmploymentIdCorTerminationRequestsErrors[keyof PostV1ContractorsEmploymentsEmploymentIdCorTerminationRequestsErrors]; - -export type PostV1ContractorsEmploymentsEmploymentIdCorTerminationRequestsResponses = - { - /** - * Created - */ - 201: CorTerminationRequestCreatedResponse; - }; - -export type PostV1ContractorsEmploymentsEmploymentIdCorTerminationRequestsResponse = - PostV1ContractorsEmploymentsEmploymentIdCorTerminationRequestsResponses[keyof PostV1ContractorsEmploymentsEmploymentIdCorTerminationRequestsResponses]; - -export type GetV1EmploymentsEmploymentIdBackgroundChecksBackgroundCheckIdData = - { - body?: never; - path: { - /** - * Employment Id - */ - employment_id: UuidSlug; - /** - * Background Check Id - */ - background_check_id: UuidSlug; - }; - query?: never; - url: '/v1/employments/{employment_id}/background-checks/{background_check_id}'; - }; - -export type GetV1EmploymentsEmploymentIdBackgroundChecksBackgroundCheckIdErrors = - { - /** - * Unauthorized - */ - 401: UnauthorizedResponse; - /** - * Not Found - */ - 404: NotFoundResponse; - /** - * Unprocessable Entity - */ - 422: UnprocessableEntityResponse; - }; - -export type GetV1EmploymentsEmploymentIdBackgroundChecksBackgroundCheckIdError = - GetV1EmploymentsEmploymentIdBackgroundChecksBackgroundCheckIdErrors[keyof GetV1EmploymentsEmploymentIdBackgroundChecksBackgroundCheckIdErrors]; - -export type GetV1EmploymentsEmploymentIdBackgroundChecksBackgroundCheckIdResponses = - { - /** - * Success - */ - 200: BackgroundChecksBackgroundCheckResponse; - }; - -export type GetV1EmploymentsEmploymentIdBackgroundChecksBackgroundCheckIdResponse = - GetV1EmploymentsEmploymentIdBackgroundChecksBackgroundCheckIdResponses[keyof GetV1EmploymentsEmploymentIdBackgroundChecksBackgroundCheckIdResponses]; - -export type GetV1BenefitRenewalRequestsBenefitRenewalRequestIdSchemaData = { +export type GetV1EmployeePersonalInformationData = { body?: never; - headers: { - /** - * Requires a Company-scoped access token obtained through the Authorization Code flow or the Refresh Token flow. - * - * The refresh token needs to have been obtained through the Authorization Code flow. - * - */ - Authorization: string; - }; - path: { - /** - * Benefit Renewal Request Id - */ - benefit_renewal_request_id: UuidSlug; - }; - query?: { - /** - * Version of the form schema - */ - json_schema_version?: number | 'latest'; - }; - url: '/v1/benefit-renewal-requests/{benefit_renewal_request_id}/schema'; + path?: never; + query?: never; + url: '/v1/employee/personal-information'; }; -export type GetV1BenefitRenewalRequestsBenefitRenewalRequestIdSchemaErrors = { +export type GetV1EmployeePersonalInformationErrors = { /** * Unauthorized */ 401: UnauthorizedResponse; /** - * Not Found - */ - 404: NotFoundResponse; - /** - * Unprocessable Entity - */ - 422: UnprocessableEntityResponse; -}; - -export type GetV1BenefitRenewalRequestsBenefitRenewalRequestIdSchemaError = - GetV1BenefitRenewalRequestsBenefitRenewalRequestIdSchemaErrors[keyof GetV1BenefitRenewalRequestsBenefitRenewalRequestIdSchemaErrors]; - -export type GetV1BenefitRenewalRequestsBenefitRenewalRequestIdSchemaResponses = - { - /** - * Success - */ - 200: BenefitRenewalRequestsBenefitRenewalRequestFormResponse; - }; - -export type GetV1BenefitRenewalRequestsBenefitRenewalRequestIdSchemaResponse = - GetV1BenefitRenewalRequestsBenefitRenewalRequestIdSchemaResponses[keyof GetV1BenefitRenewalRequestsBenefitRenewalRequestIdSchemaResponses]; - -export type PostV1MagicLinkData = { - /** - * Magic links generator body + * Forbidden */ - body: MagicLinkParams; - headers: { - /** - * Requires a Company-scoped access token obtained through the Authorization Code flow or the Refresh Token flow. - * - * The refresh token needs to have been obtained through the Authorization Code flow. - * - */ - Authorization: string; - }; - path?: never; - query?: never; - url: '/v1/magic-link'; -}; - -export type PostV1MagicLinkErrors = { + 403: ForbiddenResponse; /** - * Unprocessable Entity + * Not Found */ - 422: UnprocessableEntityResponse; + 404: NotFoundResponse; }; -export type PostV1MagicLinkError = - PostV1MagicLinkErrors[keyof PostV1MagicLinkErrors]; +export type GetV1EmployeePersonalInformationError = + GetV1EmployeePersonalInformationErrors[keyof GetV1EmployeePersonalInformationErrors]; -export type PostV1MagicLinkResponses = { +export type GetV1EmployeePersonalInformationResponses = { /** * Success */ - 200: MagicLinkResponse; + 200: SuccessResponse; }; -export type PostV1MagicLinkResponse = - PostV1MagicLinkResponses[keyof PostV1MagicLinkResponses]; +export type GetV1EmployeePersonalInformationResponse = + GetV1EmployeePersonalInformationResponses[keyof GetV1EmployeePersonalInformationResponses]; -export type DeleteV1IncentivesRecurringIdData = { +export type GetV1CountriesCountryCodeFormData = { body?: never; headers: { /** @@ -16015,15 +15665,40 @@ export type DeleteV1IncentivesRecurringIdData = { }; path: { /** - * Recurring Incentive ID + * Country code according to ISO 3-digit alphabetic codes */ - id: string; + country_code: string; + /** + * Name of the desired form + */ + form: string; }; - query?: never; - url: '/v1/incentives/recurring/{id}'; + query?: { + /** + * Required for `contract_amendment` and `global_payroll_state_taxes` forms + */ + employment_id?: string; + /** + * Two-letter US state code. Required for `global_payroll_state_taxes` (e.g. `NY`). + */ + jurisdiction?: string; + /** + * FOR TESTING PURPOSES ONLY: Include scheduled benefit groups. + */ + only_for_testing_include_scheduled_benefit_groups?: boolean; + /** + * Skips the dynamic benefits part of the schema if set. To be used when benefits are set via its own API. + */ + skip_benefits?: boolean; + /** + * Version of the form schema + */ + json_schema_version?: number | 'latest'; + }; + url: '/v1/countries/{country_code}/{form}'; }; -export type DeleteV1IncentivesRecurringIdErrors = { +export type GetV1CountriesCountryCodeFormErrors = { /** * Bad Request */ @@ -16041,35 +15716,26 @@ export type DeleteV1IncentivesRecurringIdErrors = { */ 422: UnprocessableEntityResponse; /** - * Too many requests + * Unprocessable Entity */ 429: TooManyRequestsResponse; }; -export type DeleteV1IncentivesRecurringIdError = - DeleteV1IncentivesRecurringIdErrors[keyof DeleteV1IncentivesRecurringIdErrors]; +export type GetV1CountriesCountryCodeFormError = + GetV1CountriesCountryCodeFormErrors[keyof GetV1CountriesCountryCodeFormErrors]; -export type DeleteV1IncentivesRecurringIdResponses = { +export type GetV1CountriesCountryCodeFormResponses = { /** * Success */ - 200: DeleteRecurringIncentiveResponse; + 200: CountryFormResponse; }; -export type DeleteV1IncentivesRecurringIdResponse = - DeleteV1IncentivesRecurringIdResponses[keyof DeleteV1IncentivesRecurringIdResponses]; +export type GetV1CountriesCountryCodeFormResponse = + GetV1CountriesCountryCodeFormResponses[keyof GetV1CountriesCountryCodeFormResponses]; -export type GetV1IncentivesData = { +export type GetV2OffboardingsData = { body?: never; - headers: { - /** - * Requires a Company-scoped access token obtained through the Authorization Code flow or the Refresh Token flow. - * - * The refresh token needs to have been obtained through the Authorization Code flow. - * - */ - Authorization: string; - }; path?: never; query?: { /** @@ -16077,13 +15743,15 @@ export type GetV1IncentivesData = { */ employment_id?: string; /** - * Filter by Incentive status + * Filter by offboarding type. Only `termination` and `resignation` offboardings are supported. */ - status?: string; + type?: 'termination' | 'resignation'; /** - * Filter by Recurring Incentive id + * By default, the results do not include confidential termination requests. + * Send `include_confidential=true` to include confidential requests in the response. + * */ - recurring_incentive_id?: string; + include_confidential?: boolean; /** * Starts fetching records after the given page */ @@ -16093,10 +15761,10 @@ export type GetV1IncentivesData = { */ page_size?: number; }; - url: '/v1/incentives'; + url: '/v2/offboardings'; }; -export type GetV1IncentivesErrors = { +export type GetV2OffboardingsErrors = { /** * Bad Request */ @@ -16119,24 +15787,21 @@ export type GetV1IncentivesErrors = { 429: TooManyRequestsResponse; }; -export type GetV1IncentivesError = - GetV1IncentivesErrors[keyof GetV1IncentivesErrors]; +export type GetV2OffboardingsError = + GetV2OffboardingsErrors[keyof GetV2OffboardingsErrors]; -export type GetV1IncentivesResponses = { +export type GetV2OffboardingsResponses = { /** * Success */ - 200: ListIncentivesResponse; + 200: V2ListOffboardingResponse; }; -export type GetV1IncentivesResponse = - GetV1IncentivesResponses[keyof GetV1IncentivesResponses]; +export type GetV2OffboardingsResponse = + GetV2OffboardingsResponses[keyof GetV2OffboardingsResponses]; -export type PostV1IncentivesData = { - /** - * Incentive - */ - body?: CreateOneTimeIncentiveParams; +export type GetV1TimeoffData = { + body?: never; headers: { /** * Requires a Company-scoped access token obtained through the Authorization Code flow or the Refresh Token flow. @@ -16147,11 +15812,40 @@ export type PostV1IncentivesData = { Authorization: string; }; path?: never; - query?: never; - url: '/v1/incentives'; + query?: { + /** + * Only show time off for a specific employment + */ + employment_id?: string; + /** + * Filter time off by its type + */ + timeoff_type?: TimeoffType; + /** + * Filter time off by its status + */ + status?: TimeoffStatus; + /** + * Sort order + */ + order?: 'asc' | 'desc'; + /** + * Field to sort by + */ + sort_by?: 'timeoff_type' | 'status'; + /** + * Starts fetching records after the given page + */ + page?: number; + /** + * Number of items per page + */ + page_size?: number; + }; + url: '/v1/timeoff'; }; -export type PostV1IncentivesErrors = { +export type GetV1TimeoffErrors = { /** * Bad Request */ @@ -16169,75 +15863,43 @@ export type PostV1IncentivesErrors = { */ 422: UnprocessableEntityResponse; /** - * Too many requests + * Unprocessable Entity */ 429: TooManyRequestsResponse; }; -export type PostV1IncentivesError = - PostV1IncentivesErrors[keyof PostV1IncentivesErrors]; +export type GetV1TimeoffError = GetV1TimeoffErrors[keyof GetV1TimeoffErrors]; -export type PostV1IncentivesResponses = { +export type GetV1TimeoffResponses = { /** * Success */ - 201: IncentiveResponse; -}; - -export type PostV1IncentivesResponse = - PostV1IncentivesResponses[keyof PostV1IncentivesResponses]; - -export type PostV1ProbationCompletionLetterData = { - /** - * Work Authorization Request - */ - body: CreateProbationCompletionLetterParams; - path?: never; - query?: never; - url: '/v1/probation-completion-letter'; -}; - -export type PostV1ProbationCompletionLetterErrors = { - /** - * Unauthorized - */ - 401: UnauthorizedResponse; - /** - * Not Found - */ - 404: NotFoundResponse; - /** - * Unprocessable Entity - */ - 422: UnprocessableEntityResponse; + 200: ListTimeoffResponse; }; -export type PostV1ProbationCompletionLetterError = - PostV1ProbationCompletionLetterErrors[keyof PostV1ProbationCompletionLetterErrors]; +export type GetV1TimeoffResponse = + GetV1TimeoffResponses[keyof GetV1TimeoffResponses]; -export type PostV1ProbationCompletionLetterResponses = { +export type PostV1TimeoffData = { /** - * Success + * Timeoff */ - 200: ProbationCompletionLetterResponse; -}; - -export type PostV1ProbationCompletionLetterResponse = - PostV1ProbationCompletionLetterResponses[keyof PostV1ProbationCompletionLetterResponses]; - -export type GetV1ContractorInvoiceSchedulesIdData = { - body?: never; - path: { + body: CreateApprovedTimeoffParams; + headers: { /** - * Resource unique identifier + * Requires a Company-scoped access token obtained through the Authorization Code flow or the Refresh Token flow. + * + * The refresh token needs to have been obtained through the Authorization Code flow. + * */ - id: UuidSlug; + Authorization: string; }; + path?: never; query?: never; - url: '/v1/contractor-invoice-schedules/{id}'; + url: '/v1/timeoff'; }; -export type GetV1ContractorInvoiceSchedulesIdErrors = { +export type PostV1TimeoffErrors = { /** * Bad Request */ @@ -16246,10 +15908,6 @@ export type GetV1ContractorInvoiceSchedulesIdErrors = { * Unauthorized */ 401: UnauthorizedResponse; - /** - * Forbidden - */ - 403: ForbiddenResponse; /** * Not Found */ @@ -16264,90 +15922,60 @@ export type GetV1ContractorInvoiceSchedulesIdErrors = { 429: TooManyRequestsResponse; }; -export type GetV1ContractorInvoiceSchedulesIdError = - GetV1ContractorInvoiceSchedulesIdErrors[keyof GetV1ContractorInvoiceSchedulesIdErrors]; +export type PostV1TimeoffError = PostV1TimeoffErrors[keyof PostV1TimeoffErrors]; -export type GetV1ContractorInvoiceSchedulesIdResponses = { +export type PostV1TimeoffResponses = { /** - * Success + * Created */ - 200: ContractorInvoiceScheduleResponse; + 201: TimeoffResponse; }; -export type GetV1ContractorInvoiceSchedulesIdResponse = - GetV1ContractorInvoiceSchedulesIdResponses[keyof GetV1ContractorInvoiceSchedulesIdResponses]; +export type PostV1TimeoffResponse = + PostV1TimeoffResponses[keyof PostV1TimeoffResponses]; -export type PatchV1ContractorInvoiceSchedulesId2Data = { - /** - * Update parameters - */ - body: UpdateScheduleContractorInvoiceParams; - path: { +export type GetV1CostCalculatorCountriesData = { + body?: never; + path?: never; + query?: { /** - * Resource unique identifier + * If the premium benefits should be included in the response */ - id: UuidSlug; + include_premium_benefits?: boolean; }; - query?: never; - url: '/v1/contractor-invoice-schedules/{id}'; -}; - -export type PatchV1ContractorInvoiceSchedulesId2Errors = { - /** - * Unauthorized - */ - 401: UnauthorizedResponse; - /** - * Forbidden - */ - 403: ForbiddenResponse; - /** - * Not Found - */ - 404: NotFoundResponse; - /** - * Unprocessable Entity - */ - 422: UnprocessableEntityResponse; + url: '/v1/cost-calculator/countries'; }; -export type PatchV1ContractorInvoiceSchedulesId2Error = - PatchV1ContractorInvoiceSchedulesId2Errors[keyof PatchV1ContractorInvoiceSchedulesId2Errors]; - -export type PatchV1ContractorInvoiceSchedulesId2Responses = { +export type GetV1CostCalculatorCountriesResponses = { /** * Success */ - 200: ContractorInvoiceScheduleResponse; + 200: CostCalculatorListCountryResponse; }; -export type PatchV1ContractorInvoiceSchedulesId2Response = - PatchV1ContractorInvoiceSchedulesId2Responses[keyof PatchV1ContractorInvoiceSchedulesId2Responses]; +export type GetV1CostCalculatorCountriesResponse = + GetV1CostCalculatorCountriesResponses[keyof GetV1CostCalculatorCountriesResponses]; -export type PatchV1ContractorInvoiceSchedulesIdData = { +export type PostV1EmploymentsEmploymentIdRiskReserveProofOfPaymentsData = { /** - * Update parameters + * Proof of Payment */ - body: UpdateScheduleContractorInvoiceParams; + body: CreateRiskReserveProofOfPaymentParams; path: { /** - * Resource unique identifier + * Employment ID */ - id: UuidSlug; + employment_id: string; }; query?: never; - url: '/v1/contractor-invoice-schedules/{id}'; + url: '/v1/employments/{employment_id}/risk-reserve-proof-of-payments'; }; -export type PatchV1ContractorInvoiceSchedulesIdErrors = { +export type PostV1EmploymentsEmploymentIdRiskReserveProofOfPaymentsErrors = { /** * Unauthorized */ 401: UnauthorizedResponse; - /** - * Forbidden - */ - 403: ForbiddenResponse; /** * Not Found */ @@ -16358,63 +15986,67 @@ export type PatchV1ContractorInvoiceSchedulesIdErrors = { 422: UnprocessableEntityResponse; }; -export type PatchV1ContractorInvoiceSchedulesIdError = - PatchV1ContractorInvoiceSchedulesIdErrors[keyof PatchV1ContractorInvoiceSchedulesIdErrors]; +export type PostV1EmploymentsEmploymentIdRiskReserveProofOfPaymentsError = + PostV1EmploymentsEmploymentIdRiskReserveProofOfPaymentsErrors[keyof PostV1EmploymentsEmploymentIdRiskReserveProofOfPaymentsErrors]; -export type PatchV1ContractorInvoiceSchedulesIdResponses = { +export type PostV1EmploymentsEmploymentIdRiskReserveProofOfPaymentsResponses = { /** * Success */ - 200: ContractorInvoiceScheduleResponse; + 200: RiskReserveProofOfPaymentResponse; }; -export type PatchV1ContractorInvoiceSchedulesIdResponse = - PatchV1ContractorInvoiceSchedulesIdResponses[keyof PatchV1ContractorInvoiceSchedulesIdResponses]; +export type PostV1EmploymentsEmploymentIdRiskReserveProofOfPaymentsResponse = + PostV1EmploymentsEmploymentIdRiskReserveProofOfPaymentsResponses[keyof PostV1EmploymentsEmploymentIdRiskReserveProofOfPaymentsResponses]; -export type GetV1OnboardingEmploymentsEmploymentIdPreOnboardingDocumentRequirementsData = +export type GetV1EmploymentsEmploymentIdBackgroundChecksBackgroundCheckIdData = { body?: never; path: { /** - * Employment ID + * Employment Id */ - employment_id: string; + employment_id: UuidSlug; + /** + * Background Check Id + */ + background_check_id: UuidSlug; }; query?: never; - url: '/v1/onboarding/employments/{employment_id}/pre-onboarding-document-requirements'; + url: '/v1/employments/{employment_id}/background-checks/{background_check_id}'; }; -export type GetV1OnboardingEmploymentsEmploymentIdPreOnboardingDocumentRequirementsErrors = +export type GetV1EmploymentsEmploymentIdBackgroundChecksBackgroundCheckIdErrors = { /** * Unauthorized */ 401: UnauthorizedResponse; - /** - * Forbidden - */ - 403: ForbiddenResponse; /** * Not Found */ 404: NotFoundResponse; + /** + * Unprocessable Entity + */ + 422: UnprocessableEntityResponse; }; -export type GetV1OnboardingEmploymentsEmploymentIdPreOnboardingDocumentRequirementsError = - GetV1OnboardingEmploymentsEmploymentIdPreOnboardingDocumentRequirementsErrors[keyof GetV1OnboardingEmploymentsEmploymentIdPreOnboardingDocumentRequirementsErrors]; +export type GetV1EmploymentsEmploymentIdBackgroundChecksBackgroundCheckIdError = + GetV1EmploymentsEmploymentIdBackgroundChecksBackgroundCheckIdErrors[keyof GetV1EmploymentsEmploymentIdBackgroundChecksBackgroundCheckIdErrors]; -export type GetV1OnboardingEmploymentsEmploymentIdPreOnboardingDocumentRequirementsResponses = +export type GetV1EmploymentsEmploymentIdBackgroundChecksBackgroundCheckIdResponses = { /** * Success */ - 200: IndexPreOnboardingDocumentRequirementsResponse; + 200: BackgroundChecksBackgroundCheckResponse; }; -export type GetV1OnboardingEmploymentsEmploymentIdPreOnboardingDocumentRequirementsResponse = - GetV1OnboardingEmploymentsEmploymentIdPreOnboardingDocumentRequirementsResponses[keyof GetV1OnboardingEmploymentsEmploymentIdPreOnboardingDocumentRequirementsResponses]; +export type GetV1EmploymentsEmploymentIdBackgroundChecksBackgroundCheckIdResponse = + GetV1EmploymentsEmploymentIdBackgroundChecksBackgroundCheckIdResponses[keyof GetV1EmploymentsEmploymentIdBackgroundChecksBackgroundCheckIdResponses]; -export type GetV1BillingDocumentsBillingDocumentIdData = { +export type GetV1TimeoffBalancesEmploymentIdData = { body?: never; headers: { /** @@ -16427,20 +16059,15 @@ export type GetV1BillingDocumentsBillingDocumentIdData = { }; path: { /** - * The billing document's ID - */ - billing_document_id: string; - }; - query?: { - /** - * When true, includes billing document items whose type is not part of the standard set for the invoice type. + * Employment ID for which to show the time off balance */ - include_unrecognized_types?: boolean; + employment_id: string; }; - url: '/v1/billing-documents/{billing_document_id}'; + query?: never; + url: '/v1/timeoff-balances/{employment_id}'; }; -export type GetV1BillingDocumentsBillingDocumentIdErrors = { +export type GetV1TimeoffBalancesEmploymentIdErrors = { /** * Bad Request */ @@ -16450,88 +16077,130 @@ export type GetV1BillingDocumentsBillingDocumentIdErrors = { */ 401: UnauthorizedResponse; /** - * Not Found + * TimeoffBalanceNotFoundResponse */ - 404: NotFoundResponse; + 404: TimeoffBalanceNotFoundResponse; /** * Unprocessable Entity */ 422: UnprocessableEntityResponse; /** - * Unprocessable Entity + * Too many requests */ 429: TooManyRequestsResponse; }; -export type GetV1BillingDocumentsBillingDocumentIdError = - GetV1BillingDocumentsBillingDocumentIdErrors[keyof GetV1BillingDocumentsBillingDocumentIdErrors]; +export type GetV1TimeoffBalancesEmploymentIdError = + GetV1TimeoffBalancesEmploymentIdErrors[keyof GetV1TimeoffBalancesEmploymentIdErrors]; -export type GetV1BillingDocumentsBillingDocumentIdResponses = { +export type GetV1TimeoffBalancesEmploymentIdResponses = { /** * Success */ - 200: BillingDocumentResponse; + 200: TimeoffBalanceResponse; }; -export type GetV1BillingDocumentsBillingDocumentIdResponse = - GetV1BillingDocumentsBillingDocumentIdResponses[keyof GetV1BillingDocumentsBillingDocumentIdResponses]; +export type GetV1TimeoffBalancesEmploymentIdResponse = + GetV1TimeoffBalancesEmploymentIdResponses[keyof GetV1TimeoffBalancesEmploymentIdResponses]; -export type PostV1CostCalculatorEstimationPdfData = { - /** - * Estimate params - */ - body?: CostCalculatorEstimateParams; +export type GetV1EmployeeExpensesData = { + body?: never; path?: never; query?: never; - url: '/v1/cost-calculator/estimation-pdf'; + url: '/v1/employee/expenses'; }; -export type PostV1CostCalculatorEstimationPdfErrors = { +export type GetV1EmployeeExpensesErrors = { + /** + * Unauthorized + */ + 401: UnauthorizedResponse; + /** + * Forbidden + */ + 403: ForbiddenResponse; /** * Not Found */ 404: NotFoundResponse; +}; + +export type GetV1EmployeeExpensesError = + GetV1EmployeeExpensesErrors[keyof GetV1EmployeeExpensesErrors]; + +export type GetV1EmployeeExpensesResponses = { + /** + * Success + */ + 200: SuccessResponse; +}; + +export type GetV1EmployeeExpensesResponse = + GetV1EmployeeExpensesResponses[keyof GetV1EmployeeExpensesResponses]; + +export type PostV1EmployeeExpensesData = { + /** + * Expense params + */ + body?: ParamsToCreateEmployeeExpense; + path?: never; + query?: never; + url: '/v1/employee/expenses'; +}; + +export type PostV1EmployeeExpensesErrors = { + /** + * Bad Request + */ + 400: BadRequestResponse; + /** + * Unauthorized + */ + 401: UnauthorizedResponse; + /** + * Forbidden + */ + 403: ForbiddenResponse; /** * Unprocessable Entity */ 422: UnprocessableEntityResponse; }; -export type PostV1CostCalculatorEstimationPdfError = - PostV1CostCalculatorEstimationPdfErrors[keyof PostV1CostCalculatorEstimationPdfErrors]; +export type PostV1EmployeeExpensesError = + PostV1EmployeeExpensesErrors[keyof PostV1EmployeeExpensesErrors]; -export type PostV1CostCalculatorEstimationPdfResponses = { +export type PostV1EmployeeExpensesResponses = { /** - * Success + * Created */ - 200: CostCalculatorEstimatePdfResponse; + 201: SuccessResponse; }; -export type PostV1CostCalculatorEstimationPdfResponse = - PostV1CostCalculatorEstimationPdfResponses[keyof PostV1CostCalculatorEstimationPdfResponses]; +export type PostV1EmployeeExpensesResponse = + PostV1EmployeeExpensesResponses[keyof PostV1EmployeeExpensesResponses]; -export type GetV1EmploymentsEmploymentIdCostCenterAllocationsData = { +export type GetV1ResignationsOffboardingRequestIdResignationLetterData = { body?: never; path: { /** - * Employment ID - */ - employment_id: string; - }; - query?: { - /** - * Filters allocations by status. When omitted, allocations of every status are returned. + * Offboarding request ID */ - status?: 'active' | 'scheduled' | 'expired'; + offboarding_request_id: string; }; - url: '/v1/employments/{employment_id}/cost-center-allocations'; + query?: never; + url: '/v1/resignations/{offboarding_request_id}/resignation-letter'; }; -export type GetV1EmploymentsEmploymentIdCostCenterAllocationsErrors = { +export type GetV1ResignationsOffboardingRequestIdResignationLetterErrors = { /** * Bad Request */ 400: BadRequestResponse; + /** + * Unauthorized + */ + 401: UnauthorizedResponse; /** * Forbidden */ @@ -16550,32 +16219,49 @@ export type GetV1EmploymentsEmploymentIdCostCenterAllocationsErrors = { 429: TooManyRequestsResponse; }; -export type GetV1EmploymentsEmploymentIdCostCenterAllocationsError = - GetV1EmploymentsEmploymentIdCostCenterAllocationsErrors[keyof GetV1EmploymentsEmploymentIdCostCenterAllocationsErrors]; +export type GetV1ResignationsOffboardingRequestIdResignationLetterError = + GetV1ResignationsOffboardingRequestIdResignationLetterErrors[keyof GetV1ResignationsOffboardingRequestIdResignationLetterErrors]; -export type GetV1EmploymentsEmploymentIdCostCenterAllocationsResponses = { +export type GetV1ResignationsOffboardingRequestIdResignationLetterResponses = { /** * Success */ - 200: ListCostCenterAllocationsResponse; + 200: GenericFile; }; -export type GetV1EmploymentsEmploymentIdCostCenterAllocationsResponse = - GetV1EmploymentsEmploymentIdCostCenterAllocationsResponses[keyof GetV1EmploymentsEmploymentIdCostCenterAllocationsResponses]; +export type GetV1ResignationsOffboardingRequestIdResignationLetterResponse = + GetV1ResignationsOffboardingRequestIdResignationLetterResponses[keyof GetV1ResignationsOffboardingRequestIdResignationLetterResponses]; -export type GetV1WorkAuthorizationRequestsIdData = { +export type DeleteV1CompanyManagersUserIdData = { body?: never; + headers: { + /** + * Requires a Company-scoped access token obtained through the Authorization Code flow or the Refresh Token flow. + * + * The refresh token needs to have been obtained through the Authorization Code flow. + * + */ + Authorization: string; + }; path: { /** - * work authorization request ID + * User ID */ - id: string; + user_id: string; }; query?: never; - url: '/v1/work-authorization-requests/{id}'; + url: '/v1/company-managers/{user_id}'; }; -export type GetV1WorkAuthorizationRequestsIdErrors = { +export type DeleteV1CompanyManagersUserIdErrors = { + /** + * Bad Request + */ + 400: BadRequestResponse; + /** + * Unauthorized + */ + 401: UnauthorizedResponse; /** * Not Found */ @@ -16584,37 +16270,42 @@ export type GetV1WorkAuthorizationRequestsIdErrors = { * Unprocessable Entity */ 422: UnprocessableEntityResponse; + /** + * Too many requests + */ + 429: TooManyRequestsResponse; }; -export type GetV1WorkAuthorizationRequestsIdError = - GetV1WorkAuthorizationRequestsIdErrors[keyof GetV1WorkAuthorizationRequestsIdErrors]; +export type DeleteV1CompanyManagersUserIdError = + DeleteV1CompanyManagersUserIdErrors[keyof DeleteV1CompanyManagersUserIdErrors]; -export type GetV1WorkAuthorizationRequestsIdResponses = { +export type DeleteV1CompanyManagersUserIdResponses = { /** * Success */ - 200: WorkAuthorizationRequestResponse; + 200: SuccessResponse; }; -export type GetV1WorkAuthorizationRequestsIdResponse = - GetV1WorkAuthorizationRequestsIdResponses[keyof GetV1WorkAuthorizationRequestsIdResponses]; +export type DeleteV1CompanyManagersUserIdResponse = + DeleteV1CompanyManagersUserIdResponses[keyof DeleteV1CompanyManagersUserIdResponses]; -export type PatchV1WorkAuthorizationRequestsId2Data = { - /** - * Work Authorization Request - */ - body: UpdateWorkAuthorizationRequestParams; +export type GetV1CompanyManagersUserIdData = { + body?: never; path: { /** - * work authorization request ID + * User ID */ - id: string; + user_id: string; }; query?: never; - url: '/v1/work-authorization-requests/{id}'; + url: '/v1/company-managers/{user_id}'; }; -export type PatchV1WorkAuthorizationRequestsId2Errors = { +export type GetV1CompanyManagersUserIdErrors = { + /** + * Bad Request + */ + 400: BadRequestResponse; /** * Unauthorized */ @@ -16627,37 +16318,38 @@ export type PatchV1WorkAuthorizationRequestsId2Errors = { * Unprocessable Entity */ 422: UnprocessableEntityResponse; + /** + * Too many requests + */ + 429: TooManyRequestsResponse; }; -export type PatchV1WorkAuthorizationRequestsId2Error = - PatchV1WorkAuthorizationRequestsId2Errors[keyof PatchV1WorkAuthorizationRequestsId2Errors]; +export type GetV1CompanyManagersUserIdError = + GetV1CompanyManagersUserIdErrors[keyof GetV1CompanyManagersUserIdErrors]; -export type PatchV1WorkAuthorizationRequestsId2Responses = { +export type GetV1CompanyManagersUserIdResponses = { /** * Success */ - 200: WorkAuthorizationRequestResponse; + 200: CompanyManagerResponse; }; -export type PatchV1WorkAuthorizationRequestsId2Response = - PatchV1WorkAuthorizationRequestsId2Responses[keyof PatchV1WorkAuthorizationRequestsId2Responses]; +export type GetV1CompanyManagersUserIdResponse = + GetV1CompanyManagersUserIdResponses[keyof GetV1CompanyManagersUserIdResponses]; -export type PatchV1WorkAuthorizationRequestsIdData = { - /** - * Work Authorization Request - */ - body: UpdateWorkAuthorizationRequestParams; +export type GetV1EmploymentsEmploymentIdOnboardingStepsData = { + body?: never; path: { /** - * work authorization request ID + * Employment ID */ - id: string; + employment_id: UuidSlug; }; query?: never; - url: '/v1/work-authorization-requests/{id}'; + url: '/v1/employments/{employment_id}/onboarding-steps'; }; -export type PatchV1WorkAuthorizationRequestsIdErrors = { +export type GetV1EmploymentsEmploymentIdOnboardingStepsErrors = { /** * Unauthorized */ @@ -16666,33 +16358,46 @@ export type PatchV1WorkAuthorizationRequestsIdErrors = { * Not Found */ 404: NotFoundResponse; - /** - * Unprocessable Entity - */ - 422: UnprocessableEntityResponse; }; -export type PatchV1WorkAuthorizationRequestsIdError = - PatchV1WorkAuthorizationRequestsIdErrors[keyof PatchV1WorkAuthorizationRequestsIdErrors]; +export type GetV1EmploymentsEmploymentIdOnboardingStepsError = + GetV1EmploymentsEmploymentIdOnboardingStepsErrors[keyof GetV1EmploymentsEmploymentIdOnboardingStepsErrors]; -export type PatchV1WorkAuthorizationRequestsIdResponses = { +export type GetV1EmploymentsEmploymentIdOnboardingStepsResponses = { /** * Success */ - 200: WorkAuthorizationRequestResponse; + 200: EmploymentOnboardingStepsResponse; }; -export type PatchV1WorkAuthorizationRequestsIdResponse = - PatchV1WorkAuthorizationRequestsIdResponses[keyof PatchV1WorkAuthorizationRequestsIdResponses]; +export type GetV1EmploymentsEmploymentIdOnboardingStepsResponse = + GetV1EmploymentsEmploymentIdOnboardingStepsResponses[keyof GetV1EmploymentsEmploymentIdOnboardingStepsResponses]; -export type GetV1EmployeeLeavePoliciesSummaryData = { - body?: never; +export type PostV1ContractAmendmentsAutomatableData = { + /** + * Contract Amendment + */ + body?: CreateContractAmendmentParams; + headers: { + /** + * Requires a Company-scoped access token obtained through the Authorization Code flow or the Refresh Token flow. + * + * The refresh token needs to have been obtained through the Authorization Code flow. + * + */ + Authorization: string; + }; path?: never; - query?: never; - url: '/v1/employee/leave-policies/summary'; + query?: { + /** + * Version of the form schema + */ + json_schema_version?: number | 'latest'; + }; + url: '/v1/contract-amendments/automatable'; }; -export type GetV1EmployeeLeavePoliciesSummaryErrors = { +export type PostV1ContractAmendmentsAutomatableErrors = { /** * Unauthorized */ @@ -16701,129 +16406,137 @@ export type GetV1EmployeeLeavePoliciesSummaryErrors = { * Not Found */ 404: NotFoundResponse; + /** + * Unprocessable Entity + */ + 422: UnprocessableEntityResponse; }; -export type GetV1EmployeeLeavePoliciesSummaryError = - GetV1EmployeeLeavePoliciesSummaryErrors[keyof GetV1EmployeeLeavePoliciesSummaryErrors]; +export type PostV1ContractAmendmentsAutomatableError = + PostV1ContractAmendmentsAutomatableErrors[keyof PostV1ContractAmendmentsAutomatableErrors]; -export type GetV1EmployeeLeavePoliciesSummaryResponses = { +export type PostV1ContractAmendmentsAutomatableResponses = { /** * Success */ - 200: ListLeavePoliciesSummaryResponse; + 200: ContractAmendmentAutomatableResponse; }; -export type GetV1EmployeeLeavePoliciesSummaryResponse = - GetV1EmployeeLeavePoliciesSummaryResponses[keyof GetV1EmployeeLeavePoliciesSummaryResponses]; +export type PostV1ContractAmendmentsAutomatableResponse = + PostV1ContractAmendmentsAutomatableResponses[keyof PostV1ContractAmendmentsAutomatableResponses]; -export type PutV2EmploymentsEmploymentIdFederalTaxesData = { - /** - * Employment federal taxes params - */ - body?: EmploymentFederalTaxesParams; - path: { +export type GetV1PayrollRunsData = { + body?: never; + path?: never; + query?: { /** - * Employment ID + * Filters payroll runs where period_start or period_end match the given date */ - employment_id: string; + payroll_period?: Date; + /** + * Starts fetching records after the given page + */ + page?: number; + /** + * Number of items per page + */ + page_size?: number; }; - query?: never; - url: '/v2/employments/{employment_id}/federal-taxes'; + url: '/v1/payroll-runs'; }; -export type PutV2EmploymentsEmploymentIdFederalTaxesErrors = { - /** - * Bad Request - */ - 400: BadRequestResponse; +export type GetV1PayrollRunsErrors = { /** - * Forbidden + * Unauthorized */ - 403: ForbiddenResponse; + 401: UnauthorizedResponse; /** * Not Found */ 404: NotFoundResponse; - /** - * Conflict - */ - 409: ConflictResponse; /** * Unprocessable Entity */ 422: UnprocessableEntityResponse; - /** - * Unprocessable Entity - */ - 429: TooManyRequestsResponse; }; -export type PutV2EmploymentsEmploymentIdFederalTaxesError = - PutV2EmploymentsEmploymentIdFederalTaxesErrors[keyof PutV2EmploymentsEmploymentIdFederalTaxesErrors]; +export type GetV1PayrollRunsError = + GetV1PayrollRunsErrors[keyof GetV1PayrollRunsErrors]; -export type PutV2EmploymentsEmploymentIdFederalTaxesResponses = { +export type GetV1PayrollRunsResponses = { /** * Success */ - 200: SuccessResponse; + 200: ListPayrollRunResponse; }; -export type PutV2EmploymentsEmploymentIdFederalTaxesResponse = - PutV2EmploymentsEmploymentIdFederalTaxesResponses[keyof PutV2EmploymentsEmploymentIdFederalTaxesResponses]; +export type GetV1PayrollRunsResponse = + GetV1PayrollRunsResponses[keyof GetV1PayrollRunsResponses]; -export type PostV1ProbationExtensionsData = { - /** - * ProbationExtension - */ - body: CreateProbationExtensionParams; +export type GetV1EmployeeIncentivesData = { + body?: never; path?: never; query?: never; - url: '/v1/probation-extensions'; + url: '/v1/employee/incentives'; }; -export type PostV1ProbationExtensionsErrors = { - /** - * Bad Request - */ - 400: BadRequestResponse; +export type GetV1EmployeeIncentivesErrors = { /** * Unauthorized */ 401: UnauthorizedResponse; /** - * Not Found + * Forbidden */ - 404: NotFoundResponse; + 403: ForbiddenResponse; /** - * Unprocessable Entity + * Not Found */ - 422: UnprocessableEntityResponse; + 404: NotFoundResponse; }; -export type PostV1ProbationExtensionsError = - PostV1ProbationExtensionsErrors[keyof PostV1ProbationExtensionsErrors]; +export type GetV1EmployeeIncentivesError = + GetV1EmployeeIncentivesErrors[keyof GetV1EmployeeIncentivesErrors]; -export type PostV1ProbationExtensionsResponses = { +export type GetV1EmployeeIncentivesResponses = { /** * Success */ - 200: ProbationExtensionResponse; + 200: SuccessResponse; }; -export type PostV1ProbationExtensionsResponse = - PostV1ProbationExtensionsResponses[keyof PostV1ProbationExtensionsResponses]; +export type GetV1EmployeeIncentivesResponse = + GetV1EmployeeIncentivesResponses[keyof GetV1EmployeeIncentivesResponses]; -export type PostV1RiskReserveData = { +export type PatchV1SandboxEmploymentsEmploymentId2Data = { /** - * Risk Reserve + * Employment params */ - body: CreateRiskReserveParams; - path?: never; + body?: EmploymentUpdateParams; + headers: { + /** + * Requires a Company-scoped access token obtained through the Authorization Code flow or the Refresh Token flow. + * + * The refresh token needs to have been obtained through the Authorization Code flow. + * + */ + Authorization: string; + }; + path: { + /** + * Employment ID + */ + employment_id: string; + }; query?: never; - url: '/v1/risk-reserve'; + url: '/v1/sandbox/employments/{employment_id}'; }; -export type PostV1RiskReserveErrors = { +export type PatchV1SandboxEmploymentsEmploymentId2Errors = { + /** + * Bad Request + */ + 400: BadRequestResponse; /** * Unauthorized */ @@ -16832,30 +16545,47 @@ export type PostV1RiskReserveErrors = { * Not Found */ 404: NotFoundResponse; + /** + * Conflict + */ + 409: ConflictResponse; /** * Unprocessable Entity */ 422: UnprocessableEntityResponse; + /** + * Too many requests + */ + 429: TooManyRequestsResponse; }; -export type PostV1RiskReserveError = - PostV1RiskReserveErrors[keyof PostV1RiskReserveErrors]; +export type PatchV1SandboxEmploymentsEmploymentId2Error = + PatchV1SandboxEmploymentsEmploymentId2Errors[keyof PatchV1SandboxEmploymentsEmploymentId2Errors]; -export type PostV1RiskReserveResponses = { +export type PatchV1SandboxEmploymentsEmploymentId2Responses = { /** * Success */ - 200: SuccessResponse; + 200: EmploymentResponse; }; -export type PostV1RiskReserveResponse = - PostV1RiskReserveResponses[keyof PostV1RiskReserveResponses]; +export type PatchV1SandboxEmploymentsEmploymentId2Response = + PatchV1SandboxEmploymentsEmploymentId2Responses[keyof PatchV1SandboxEmploymentsEmploymentId2Responses]; -export type PostV1EmploymentsEmploymentIdRiskReserveProofOfPaymentsData = { +export type PatchV1SandboxEmploymentsEmploymentIdData = { /** - * Proof of Payment + * Employment params */ - body: CreateRiskReserveProofOfPaymentParams; + body?: EmploymentUpdateParams; + headers: { + /** + * Requires a Company-scoped access token obtained through the Authorization Code flow or the Refresh Token flow. + * + * The refresh token needs to have been obtained through the Authorization Code flow. + * + */ + Authorization: string; + }; path: { /** * Employment ID @@ -16863,10 +16593,14 @@ export type PostV1EmploymentsEmploymentIdRiskReserveProofOfPaymentsData = { employment_id: string; }; query?: never; - url: '/v1/employments/{employment_id}/risk-reserve-proof-of-payments'; + url: '/v1/sandbox/employments/{employment_id}'; }; -export type PostV1EmploymentsEmploymentIdRiskReserveProofOfPaymentsErrors = { +export type PatchV1SandboxEmploymentsEmploymentIdErrors = { + /** + * Bad Request + */ + 400: BadRequestResponse; /** * Unauthorized */ @@ -16875,127 +16609,109 @@ export type PostV1EmploymentsEmploymentIdRiskReserveProofOfPaymentsErrors = { * Not Found */ 404: NotFoundResponse; + /** + * Conflict + */ + 409: ConflictResponse; /** * Unprocessable Entity */ 422: UnprocessableEntityResponse; + /** + * Too many requests + */ + 429: TooManyRequestsResponse; }; -export type PostV1EmploymentsEmploymentIdRiskReserveProofOfPaymentsError = - PostV1EmploymentsEmploymentIdRiskReserveProofOfPaymentsErrors[keyof PostV1EmploymentsEmploymentIdRiskReserveProofOfPaymentsErrors]; +export type PatchV1SandboxEmploymentsEmploymentIdError = + PatchV1SandboxEmploymentsEmploymentIdErrors[keyof PatchV1SandboxEmploymentsEmploymentIdErrors]; -export type PostV1EmploymentsEmploymentIdRiskReserveProofOfPaymentsResponses = { +export type PatchV1SandboxEmploymentsEmploymentIdResponses = { /** * Success */ - 200: RiskReserveProofOfPaymentResponse; + 200: EmploymentResponse; }; -export type PostV1EmploymentsEmploymentIdRiskReserveProofOfPaymentsResponse = - PostV1EmploymentsEmploymentIdRiskReserveProofOfPaymentsResponses[keyof PostV1EmploymentsEmploymentIdRiskReserveProofOfPaymentsResponses]; +export type PatchV1SandboxEmploymentsEmploymentIdResponse = + PatchV1SandboxEmploymentsEmploymentIdResponses[keyof PatchV1SandboxEmploymentsEmploymentIdResponses]; -export type GetV1CompaniesCompanyIdComplianceProfileData = { +export type GetV1BenefitRenewalRequestsBenefitRenewalRequestIdSchemaData = { body?: never; + headers: { + /** + * Requires a Company-scoped access token obtained through the Authorization Code flow or the Refresh Token flow. + * + * The refresh token needs to have been obtained through the Authorization Code flow. + * + */ + Authorization: string; + }; path: { /** - * Company ID + * Benefit Renewal Request Id */ - company_id: UuidSlug; + benefit_renewal_request_id: UuidSlug; }; - query?: never; - url: '/v1/companies/{company_id}/compliance-profile'; + query?: { + /** + * Version of the form schema + */ + json_schema_version?: number | 'latest'; + }; + url: '/v1/benefit-renewal-requests/{benefit_renewal_request_id}/schema'; }; -export type GetV1CompaniesCompanyIdComplianceProfileErrors = { +export type GetV1BenefitRenewalRequestsBenefitRenewalRequestIdSchemaErrors = { /** * Unauthorized */ 401: UnauthorizedResponse; - /** - * Forbidden - */ - 403: ForbiddenResponse; /** * Not Found */ 404: NotFoundResponse; -}; - -export type GetV1CompaniesCompanyIdComplianceProfileError = - GetV1CompaniesCompanyIdComplianceProfileErrors[keyof GetV1CompaniesCompanyIdComplianceProfileErrors]; - -export type GetV1CompaniesCompanyIdComplianceProfileResponses = { /** - * Success + * Unprocessable Entity */ - 200: CompanyComplianceProfileResponse; + 422: UnprocessableEntityResponse; }; -export type GetV1CompaniesCompanyIdComplianceProfileResponse = - GetV1CompaniesCompanyIdComplianceProfileResponses[keyof GetV1CompaniesCompanyIdComplianceProfileResponses]; +export type GetV1BenefitRenewalRequestsBenefitRenewalRequestIdSchemaError = + GetV1BenefitRenewalRequestsBenefitRenewalRequestIdSchemaErrors[keyof GetV1BenefitRenewalRequestsBenefitRenewalRequestIdSchemaErrors]; -export type GetV1CompaniesCompanyIdProductPricesData = { - body?: never; - path: { +export type GetV1BenefitRenewalRequestsBenefitRenewalRequestIdSchemaResponses = + { /** - * Company ID + * Success */ - company_id: UuidSlug; + 200: BenefitRenewalRequestsBenefitRenewalRequestFormResponse; }; - query?: never; - url: '/v1/companies/{company_id}/product-prices'; -}; -export type GetV1CompaniesCompanyIdProductPricesErrors = { - /** - * Unauthorized - */ - 401: UnauthorizedResponse; +export type GetV1BenefitRenewalRequestsBenefitRenewalRequestIdSchemaResponse = + GetV1BenefitRenewalRequestsBenefitRenewalRequestIdSchemaResponses[keyof GetV1BenefitRenewalRequestsBenefitRenewalRequestIdSchemaResponses]; + +export type PutV2EmploymentsEmploymentIdBillingAddressDetailsData = { /** - * Not Found + * Employment billing address details params */ - 404: NotFoundResponse; - /** - * Unprocessable Entity - */ - 422: UnprocessableEntityResponse; -}; - -export type GetV1CompaniesCompanyIdProductPricesError = - GetV1CompaniesCompanyIdProductPricesErrors[keyof GetV1CompaniesCompanyIdProductPricesErrors]; - -export type GetV1CompaniesCompanyIdProductPricesResponses = { - /** - * Success - */ - 200: ListProductPricesResponse; -}; - -export type GetV1CompaniesCompanyIdProductPricesResponse = - GetV1CompaniesCompanyIdProductPricesResponses[keyof GetV1CompaniesCompanyIdProductPricesResponses]; - -export type GetV1CompaniesCompanyIdData = { - body?: never; - headers: { + body?: EmploymentBillingAddressDetailsParams; + path: { /** - * Requires a Company-scoped access token obtained through the Authorization Code flow or the Refresh Token flow. - * - * The refresh token needs to have been obtained through the Authorization Code flow. - * + * Employment ID */ - Authorization: string; + employment_id: string; }; - path: { + query?: { /** - * Company ID + * Version of the billing_address_details form schema */ - company_id: string; + billing_address_details_json_schema_version?: number | 'latest'; }; - query?: never; - url: '/v1/companies/{company_id}'; + url: '/v2/employments/{employment_id}/billing_address_details'; }; -export type GetV1CompaniesCompanyIdErrors = { +export type PutV2EmploymentsEmploymentIdBillingAddressDetailsErrors = { /** * Bad Request */ @@ -17004,38 +16720,43 @@ export type GetV1CompaniesCompanyIdErrors = { * Unauthorized */ 401: UnauthorizedResponse; + /** + * Forbidden + */ + 403: ForbiddenResponse; /** * Not Found */ 404: NotFoundResponse; + /** + * Conflict + */ + 409: ConflictResponse; /** * Unprocessable Entity */ 422: UnprocessableEntityResponse; /** - * Too many requests + * Unprocessable Entity */ 429: TooManyRequestsResponse; }; -export type GetV1CompaniesCompanyIdError = - GetV1CompaniesCompanyIdErrors[keyof GetV1CompaniesCompanyIdErrors]; +export type PutV2EmploymentsEmploymentIdBillingAddressDetailsError = + PutV2EmploymentsEmploymentIdBillingAddressDetailsErrors[keyof PutV2EmploymentsEmploymentIdBillingAddressDetailsErrors]; -export type GetV1CompaniesCompanyIdResponses = { +export type PutV2EmploymentsEmploymentIdBillingAddressDetailsResponses = { /** * Success */ - 200: CompanyResponse; + 200: EmploymentDetailsOnlyResponse; }; -export type GetV1CompaniesCompanyIdResponse = - GetV1CompaniesCompanyIdResponses[keyof GetV1CompaniesCompanyIdResponses]; +export type PutV2EmploymentsEmploymentIdBillingAddressDetailsResponse = + PutV2EmploymentsEmploymentIdBillingAddressDetailsResponses[keyof PutV2EmploymentsEmploymentIdBillingAddressDetailsResponses]; -export type PatchV1CompaniesCompanyId2Data = { - /** - * Update Company params - */ - body?: UpdateCompanyParams; +export type DeleteV1IncentivesIdData = { + body?: never; headers: { /** * Requires a Company-scoped access token obtained through the Authorization Code flow or the Refresh Token flow. @@ -17047,25 +16768,15 @@ export type PatchV1CompaniesCompanyId2Data = { }; path: { /** - * Company ID - * - */ - company_id: string; - }; - query?: { - /** - * Version of the address_details form schema - */ - address_details_json_schema_version?: number | 'latest'; - /** - * Version of the bank_account_details form schema + * Incentive ID */ - bank_account_details_json_schema_version?: number | 'latest'; + id: string; }; - url: '/v1/companies/{company_id}'; + query?: never; + url: '/v1/incentives/{id}'; }; -export type PatchV1CompaniesCompanyId2Errors = { +export type DeleteV1IncentivesIdErrors = { /** * Bad Request */ @@ -17078,6 +16789,10 @@ export type PatchV1CompaniesCompanyId2Errors = { * Not Found */ 404: NotFoundResponse; + /** + * Conflict + */ + 409: ConflictResponse; /** * Unprocessable Entity */ @@ -17088,24 +16803,21 @@ export type PatchV1CompaniesCompanyId2Errors = { 429: TooManyRequestsResponse; }; -export type PatchV1CompaniesCompanyId2Error = - PatchV1CompaniesCompanyId2Errors[keyof PatchV1CompaniesCompanyId2Errors]; +export type DeleteV1IncentivesIdError = + DeleteV1IncentivesIdErrors[keyof DeleteV1IncentivesIdErrors]; -export type PatchV1CompaniesCompanyId2Responses = { +export type DeleteV1IncentivesIdResponses = { /** * Success */ - 200: CompanyResponse; + 200: SuccessResponse; }; -export type PatchV1CompaniesCompanyId2Response = - PatchV1CompaniesCompanyId2Responses[keyof PatchV1CompaniesCompanyId2Responses]; +export type DeleteV1IncentivesIdResponse = + DeleteV1IncentivesIdResponses[keyof DeleteV1IncentivesIdResponses]; -export type PatchV1CompaniesCompanyIdData = { - /** - * Update Company params - */ - body?: UpdateCompanyParams; +export type GetV1IncentivesIdData = { + body?: never; headers: { /** * Requires a Company-scoped access token obtained through the Authorization Code flow or the Refresh Token flow. @@ -17117,25 +16829,15 @@ export type PatchV1CompaniesCompanyIdData = { }; path: { /** - * Company ID - * - */ - company_id: string; - }; - query?: { - /** - * Version of the address_details form schema - */ - address_details_json_schema_version?: number | 'latest'; - /** - * Version of the bank_account_details form schema + * Incentive ID */ - bank_account_details_json_schema_version?: number | 'latest'; + id: string; }; - url: '/v1/companies/{company_id}'; + query?: never; + url: '/v1/incentives/{id}'; }; -export type PatchV1CompaniesCompanyIdErrors = { +export type GetV1IncentivesIdErrors = { /** * Bad Request */ @@ -17158,32 +16860,44 @@ export type PatchV1CompaniesCompanyIdErrors = { 429: TooManyRequestsResponse; }; -export type PatchV1CompaniesCompanyIdError = - PatchV1CompaniesCompanyIdErrors[keyof PatchV1CompaniesCompanyIdErrors]; +export type GetV1IncentivesIdError = + GetV1IncentivesIdErrors[keyof GetV1IncentivesIdErrors]; -export type PatchV1CompaniesCompanyIdResponses = { +export type GetV1IncentivesIdResponses = { /** * Success */ - 200: CompanyResponse; + 200: IncentiveResponse; }; -export type PatchV1CompaniesCompanyIdResponse = - PatchV1CompaniesCompanyIdResponses[keyof PatchV1CompaniesCompanyIdResponses]; +export type GetV1IncentivesIdResponse = + GetV1IncentivesIdResponses[keyof GetV1IncentivesIdResponses]; -export type GetV1EmployeeAddressData = { - body?: never; - path?: never; - query?: { +export type PatchV1IncentivesId2Data = { + /** + * Incentive + */ + body?: UpdateIncentiveParams; + headers: { /** - * Version of the address_details form schema + * Requires a Company-scoped access token obtained through the Authorization Code flow or the Refresh Token flow. + * + * The refresh token needs to have been obtained through the Authorization Code flow. + * */ - address_details_json_schema_version?: number | 'latest'; + Authorization: string; }; - url: '/v1/employee/address'; + path: { + /** + * Incentive ID + */ + id: string; + }; + query?: never; + url: '/v1/incentives/{id}'; }; -export type GetV1EmployeeAddressErrors = { +export type PatchV1IncentivesId2Errors = { /** * Bad Request */ @@ -17192,49 +16906,62 @@ export type GetV1EmployeeAddressErrors = { * Unauthorized */ 401: UnauthorizedResponse; - /** - * Forbidden - */ - 403: ForbiddenResponse; /** * Not Found */ 404: NotFoundResponse; + /** + * Conflict + */ + 409: ConflictResponse; /** * Unprocessable Entity */ + 422: UnprocessableEntityResponse; + /** + * Too many requests + */ 429: TooManyRequestsResponse; }; -export type GetV1EmployeeAddressError = - GetV1EmployeeAddressErrors[keyof GetV1EmployeeAddressErrors]; +export type PatchV1IncentivesId2Error = + PatchV1IncentivesId2Errors[keyof PatchV1IncentivesId2Errors]; -export type GetV1EmployeeAddressResponses = { +export type PatchV1IncentivesId2Responses = { /** * Success */ - 200: EmploymentDetailsOnlyResponse; + 200: IncentiveResponse; }; -export type GetV1EmployeeAddressResponse = - GetV1EmployeeAddressResponses[keyof GetV1EmployeeAddressResponses]; +export type PatchV1IncentivesId2Response = + PatchV1IncentivesId2Responses[keyof PatchV1IncentivesId2Responses]; -export type PutV1EmployeeAddressData = { +export type PatchV1IncentivesIdData = { /** - * Employee address details params + * Incentive */ - body?: EmploymentAddressDetailsParams; - path?: never; - query?: { + body?: UpdateIncentiveParams; + headers: { /** - * Version of the address_details form schema + * Requires a Company-scoped access token obtained through the Authorization Code flow or the Refresh Token flow. + * + * The refresh token needs to have been obtained through the Authorization Code flow. + * */ - address_details_json_schema_version?: number | 'latest'; + Authorization: string; }; - url: '/v1/employee/address'; + path: { + /** + * Incentive ID + */ + id: string; + }; + query?: never; + url: '/v1/incentives/{id}'; }; -export type PutV1EmployeeAddressErrors = { +export type PatchV1IncentivesIdErrors = { /** * Bad Request */ @@ -17243,50 +16970,171 @@ export type PutV1EmployeeAddressErrors = { * Unauthorized */ 401: UnauthorizedResponse; - /** - * Forbidden - */ - 403: ForbiddenResponse; /** * Not Found */ 404: NotFoundResponse; + /** + * Conflict + */ + 409: ConflictResponse; /** * Unprocessable Entity */ 422: UnprocessableEntityResponse; /** - * Unprocessable Entity + * Too many requests */ 429: TooManyRequestsResponse; }; -export type PutV1EmployeeAddressError = - PutV1EmployeeAddressErrors[keyof PutV1EmployeeAddressErrors]; +export type PatchV1IncentivesIdError = + PatchV1IncentivesIdErrors[keyof PatchV1IncentivesIdErrors]; -export type PutV1EmployeeAddressResponses = { +export type PatchV1IncentivesIdResponses = { /** * Success */ - 200: EmploymentDetailsOnlyResponse; + 200: IncentiveResponse; }; -export type PutV1EmployeeAddressResponse = - PutV1EmployeeAddressResponses[keyof PutV1EmployeeAddressResponses]; +export type PatchV1IncentivesIdResponse = + PatchV1IncentivesIdResponses[keyof PatchV1IncentivesIdResponses]; -export type GetV1ResignationsOffboardingRequestIdResignationLetterData = { - body?: never; - path: { - /** - * Offboarding request ID - */ - offboarding_request_id: string; - }; - query?: never; - url: '/v1/resignations/{offboarding_request_id}/resignation-letter'; +export type GetV1CompaniesCompanyIdLegalEntitiesLegalEntityIdAdministrativeDetailsData = + { + body?: never; + path: { + /** + * Company ID + */ + company_id: UuidSlug; + /** + * Legal entity ID + */ + legal_entity_id: UuidSlug; + }; + query?: never; + url: '/v1/companies/{company_id}/legal-entities/{legal_entity_id}/administrative-details'; + }; + +export type GetV1CompaniesCompanyIdLegalEntitiesLegalEntityIdAdministrativeDetailsErrors = + { + /** + * Unauthorized + */ + 401: UnauthorizedResponse; + /** + * Not Found + */ + 404: NotFoundResponse; + }; + +export type GetV1CompaniesCompanyIdLegalEntitiesLegalEntityIdAdministrativeDetailsError = + GetV1CompaniesCompanyIdLegalEntitiesLegalEntityIdAdministrativeDetailsErrors[keyof GetV1CompaniesCompanyIdLegalEntitiesLegalEntityIdAdministrativeDetailsErrors]; + +export type GetV1CompaniesCompanyIdLegalEntitiesLegalEntityIdAdministrativeDetailsResponses = + { + /** + * ShowLegalEntityAdministrativeDetailsResponse + * + * Country specific json schema driven administrative details for legal entities + */ + 200: { + data: { + [key: string]: unknown; + }; + }; + }; + +export type GetV1CompaniesCompanyIdLegalEntitiesLegalEntityIdAdministrativeDetailsResponse = + GetV1CompaniesCompanyIdLegalEntitiesLegalEntityIdAdministrativeDetailsResponses[keyof GetV1CompaniesCompanyIdLegalEntitiesLegalEntityIdAdministrativeDetailsResponses]; + +export type PutV1CompaniesCompanyIdLegalEntitiesLegalEntityIdAdministrativeDetailsData = + { + /** + * Legal entity administrative details params + */ + body?: AdministrativeDetailsParams; + path: { + /** + * Company ID + */ + company_id: UuidSlug; + /** + * Legal entity ID + */ + legal_entity_id: UuidSlug; + }; + query?: never; + url: '/v1/companies/{company_id}/legal-entities/{legal_entity_id}/administrative-details'; + }; + +export type PutV1CompaniesCompanyIdLegalEntitiesLegalEntityIdAdministrativeDetailsErrors = + { + /** + * Unauthorized + */ + 401: UnauthorizedResponse; + /** + * Not Found + */ + 404: NotFoundResponse; + /** + * Conflict + */ + 409: ConflictResponse; + /** + * Unprocessable Entity + */ + 422: UnprocessableEntityResponse; + /** + * Unprocessable Entity + */ + 429: TooManyRequestsResponse; + }; + +export type PutV1CompaniesCompanyIdLegalEntitiesLegalEntityIdAdministrativeDetailsError = + PutV1CompaniesCompanyIdLegalEntitiesLegalEntityIdAdministrativeDetailsErrors[keyof PutV1CompaniesCompanyIdLegalEntitiesLegalEntityIdAdministrativeDetailsErrors]; + +export type PutV1CompaniesCompanyIdLegalEntitiesLegalEntityIdAdministrativeDetailsResponses = + { + /** + * ShowLegalEntityAdministrativeDetailsResponse + * + * Country specific json schema driven administrative details for legal entities + */ + 200: { + data: { + [key: string]: unknown; + }; + }; + }; + +export type PutV1CompaniesCompanyIdLegalEntitiesLegalEntityIdAdministrativeDetailsResponse = + PutV1CompaniesCompanyIdLegalEntitiesLegalEntityIdAdministrativeDetailsResponses[keyof PutV1CompaniesCompanyIdLegalEntitiesLegalEntityIdAdministrativeDetailsResponses]; + +export type PutV2EmploymentsEmploymentIdBankAccountDetailsData = { + /** + * Employment bank account details params + */ + body?: EmploymentBankAccountDetailsParams; + path: { + /** + * Employment ID + */ + employment_id: string; + }; + query?: { + /** + * Version of the bank_account_details form schema + */ + bank_account_details_json_schema_version?: number | 'latest'; + }; + url: '/v2/employments/{employment_id}/bank_account_details'; }; -export type GetV1ResignationsOffboardingRequestIdResignationLetterErrors = { +export type PutV2EmploymentsEmploymentIdBankAccountDetailsErrors = { /** * Bad Request */ @@ -17303,6 +17151,10 @@ export type GetV1ResignationsOffboardingRequestIdResignationLetterErrors = { * Not Found */ 404: NotFoundResponse; + /** + * Conflict + */ + 409: ConflictResponse; /** * Unprocessable Entity */ @@ -17313,41 +17165,88 @@ export type GetV1ResignationsOffboardingRequestIdResignationLetterErrors = { 429: TooManyRequestsResponse; }; -export type GetV1ResignationsOffboardingRequestIdResignationLetterError = - GetV1ResignationsOffboardingRequestIdResignationLetterErrors[keyof GetV1ResignationsOffboardingRequestIdResignationLetterErrors]; +export type PutV2EmploymentsEmploymentIdBankAccountDetailsError = + PutV2EmploymentsEmploymentIdBankAccountDetailsErrors[keyof PutV2EmploymentsEmploymentIdBankAccountDetailsErrors]; -export type GetV1ResignationsOffboardingRequestIdResignationLetterResponses = { +export type PutV2EmploymentsEmploymentIdBankAccountDetailsResponses = { /** * Success */ - 200: GenericFile; + 200: EmploymentDetailsOnlyResponse; }; -export type GetV1ResignationsOffboardingRequestIdResignationLetterResponse = - GetV1ResignationsOffboardingRequestIdResignationLetterResponses[keyof GetV1ResignationsOffboardingRequestIdResignationLetterResponses]; +export type PutV2EmploymentsEmploymentIdBankAccountDetailsResponse = + PutV2EmploymentsEmploymentIdBankAccountDetailsResponses[keyof PutV2EmploymentsEmploymentIdBankAccountDetailsResponses]; -export type GetV2EmploymentsEmploymentIdBasicInformationData = { +export type GetV1ContractorInvoicesData = { body?: never; - path: { + path?: never; + query?: { /** - * Employment ID + * Filters contractor invoices by status matching the value. */ - employment_id: string; - }; - query?: { + status?: ContractorInvoiceStatus; /** - * Version of the employment_basic_information form schema + * Filters contractor invoices by invoice schedule ID matching the value. */ - employment_basic_information_json_schema_version?: number | 'latest'; + contractor_invoice_schedule_id?: UuidSlug; + /** + * Filters contractor invoices by date greater than or equal to the value. + */ + date_from?: Date; + /** + * Filters contractor invoices by date less than or equal to the value. + */ + date_to?: Date; + /** + * Filters contractor invoices by due date greater than or equal to the value. + */ + due_date_from?: Date; + /** + * Filters contractor invoices by due date less than or equal to the value. + */ + due_date_to?: Date; + /** + * Filters contractor invoices by approved date greater than or equal to the value. + */ + approved_date_from?: Date; + /** + * Filters contractor invoices by approved date less than or equal to the value. + */ + approved_date_to?: Date; + /** + * Filters contractor invoices by paid out date greater than or equal to the value. + */ + paid_out_date_from?: Date; + /** + * Filters contractor invoices by paid out date less than or equal to the value. + */ + paid_out_date_to?: Date; + /** + * Field to sort by + */ + sort_by?: 'date' | 'due_date' | 'approved_at' | 'paid_out_at'; + /** + * Sort order + */ + order?: 'asc' | 'desc'; + /** + * Starts fetching records after the given page + */ + page?: number; + /** + * Number of items per page + */ + page_size?: number; }; - url: '/v2/employments/{employment_id}/basic-information'; + url: '/v1/contractor-invoices'; }; -export type GetV2EmploymentsEmploymentIdBasicInformationErrors = { +export type GetV1ContractorInvoicesErrors = { /** - * Bad Request + * Unauthorized */ - 400: BadRequestResponse; + 401: UnauthorizedResponse; /** * Forbidden */ @@ -17360,157 +17259,98 @@ export type GetV2EmploymentsEmploymentIdBasicInformationErrors = { * Unprocessable Entity */ 422: UnprocessableEntityResponse; - /** - * Unprocessable Entity - */ - 429: TooManyRequestsResponse; }; -export type GetV2EmploymentsEmploymentIdBasicInformationError = - GetV2EmploymentsEmploymentIdBasicInformationErrors[keyof GetV2EmploymentsEmploymentIdBasicInformationErrors]; +export type GetV1ContractorInvoicesError = + GetV1ContractorInvoicesErrors[keyof GetV1ContractorInvoicesErrors]; -export type GetV2EmploymentsEmploymentIdBasicInformationResponses = { +export type GetV1ContractorInvoicesResponses = { /** * Success */ - 200: EmploymentDetailsOnlyResponse; + 200: ListContractorInvoicesResponse; }; -export type GetV2EmploymentsEmploymentIdBasicInformationResponse = - GetV2EmploymentsEmploymentIdBasicInformationResponses[keyof GetV2EmploymentsEmploymentIdBasicInformationResponses]; +export type GetV1ContractorInvoicesResponse = + GetV1ContractorInvoicesResponses[keyof GetV1ContractorInvoicesResponses]; -export type PutV2EmploymentsEmploymentIdBasicInformationData = { - /** - * Employment basic information params - */ - body?: EmploymentBasicInformationParams; - path: { +export type GetV1ExpensesCategoriesData = { + body?: never; + path?: never; + query?: { /** - * Employment ID + * The employment ID for which to list categories. Required if neither expense_id nor country_code is provided. */ - employment_id: string; - }; - query?: { + employment_id?: string; /** - * Version of the employment_basic_information form schema + * The expense ID for which to list categories (includes the expense's category, even if it is not selectable by default). If provided without employment_id, will use the expense's employment context. */ - employment_basic_information_json_schema_version?: number | 'latest'; - }; - url: '/v2/employments/{employment_id}/basic-information'; -}; - -export type PutV2EmploymentsEmploymentIdBasicInformationErrors = { - /** - * Bad Request - */ - 400: BadRequestResponse; - /** - * Forbidden - */ - 403: ForbiddenResponse; - /** - * Conflict - */ - 409: ConflictResponse; - /** - * Unprocessable Entity - */ - 422: UnprocessableEntityResponse; - /** - * Unprocessable Entity - */ - 429: TooManyRequestsResponse; -}; - -export type PutV2EmploymentsEmploymentIdBasicInformationError = - PutV2EmploymentsEmploymentIdBasicInformationErrors[keyof PutV2EmploymentsEmploymentIdBasicInformationErrors]; - -export type PutV2EmploymentsEmploymentIdBasicInformationResponses = { - /** - * Success - */ - 200: EmploymentDetailsOnlyResponse; -}; - -export type PutV2EmploymentsEmploymentIdBasicInformationResponse = - PutV2EmploymentsEmploymentIdBasicInformationResponses[keyof PutV2EmploymentsEmploymentIdBasicInformationResponses]; - -export type PutV1EmploymentsEmploymentIdFederalTaxesData = { - /** - * Employment federal taxes params - */ - body?: EmploymentFederalTaxesParams; - path: { + expense_id?: string; /** - * Employment ID + * Include un-selectable intermediate categories in the response */ - employment_id: string; + include_parents?: boolean; + /** + * Filter categories by country (ISO 3166-1 alpha-3 code, e.g. "GBR"). Only used when neither employment_id nor expense_id is provided. + */ + country_code?: string; }; - query?: never; - url: '/v1/employments/{employment_id}/federal-taxes'; + url: '/v1/expenses/categories'; }; -export type PutV1EmploymentsEmploymentIdFederalTaxesErrors = { +export type GetV1ExpensesCategoriesErrors = { /** * Bad Request */ 400: BadRequestResponse; /** - * Forbidden + * Unauthorized */ - 403: ForbiddenResponse; + 401: UnauthorizedResponse; /** * Not Found */ 404: NotFoundResponse; - /** - * Conflict - */ - 409: ConflictResponse; /** * Unprocessable Entity */ 422: UnprocessableEntityResponse; /** - * Unprocessable Entity + * Too many requests */ 429: TooManyRequestsResponse; }; -export type PutV1EmploymentsEmploymentIdFederalTaxesError = - PutV1EmploymentsEmploymentIdFederalTaxesErrors[keyof PutV1EmploymentsEmploymentIdFederalTaxesErrors]; +export type GetV1ExpensesCategoriesError = + GetV1ExpensesCategoriesErrors[keyof GetV1ExpensesCategoriesErrors]; -export type PutV1EmploymentsEmploymentIdFederalTaxesResponses = { +export type GetV1ExpensesCategoriesResponses = { /** * Success */ - 200: SuccessResponse; + 200: ListExpenseCategoriesResponse; }; -export type PutV1EmploymentsEmploymentIdFederalTaxesResponse = - PutV1EmploymentsEmploymentIdFederalTaxesResponses[keyof PutV1EmploymentsEmploymentIdFederalTaxesResponses]; +export type GetV1ExpensesCategoriesResponse = + GetV1ExpensesCategoriesResponses[keyof GetV1ExpensesCategoriesResponses]; -export type GetV1ContractAmendmentsData = { +export type GetV1EmploymentsEmploymentIdContractDocumentsData = { body?: never; - headers: { + path: { /** - * Requires a Company-scoped access token obtained through the Authorization Code flow or the Refresh Token flow. - * - * The refresh token needs to have been obtained through the Authorization Code flow. - * + * Employment ID */ - Authorization: string; + employment_id: string; }; - path?: never; query?: { /** - * Employment ID + * Filter by contract document statuses */ - employment_id?: string; + statuses?: Array; /** - * Contract Amendment status + * Exclude contract documents with specific statuses */ - status?: ContractAmendmentStatus; + except_statuses?: Array; /** * Starts fetching records after the given page */ @@ -17520,10 +17360,10 @@ export type GetV1ContractAmendmentsData = { */ page_size?: number; }; - url: '/v1/contract-amendments'; + url: '/v1/employments/{employment_id}/contract-documents'; }; -export type GetV1ContractAmendmentsErrors = { +export type GetV1EmploymentsEmploymentIdContractDocumentsErrors = { /** * Unauthorized */ @@ -17538,44 +17378,45 @@ export type GetV1ContractAmendmentsErrors = { 422: UnprocessableEntityResponse; }; -export type GetV1ContractAmendmentsError = - GetV1ContractAmendmentsErrors[keyof GetV1ContractAmendmentsErrors]; +export type GetV1EmploymentsEmploymentIdContractDocumentsError = + GetV1EmploymentsEmploymentIdContractDocumentsErrors[keyof GetV1EmploymentsEmploymentIdContractDocumentsErrors]; -export type GetV1ContractAmendmentsResponses = { +export type GetV1EmploymentsEmploymentIdContractDocumentsResponses = { /** * Success */ - 200: ListContractAmendmentResponse; + 200: IndexContractDocumentsResponse; }; -export type GetV1ContractAmendmentsResponse = - GetV1ContractAmendmentsResponses[keyof GetV1ContractAmendmentsResponses]; +export type GetV1EmploymentsEmploymentIdContractDocumentsResponse = + GetV1EmploymentsEmploymentIdContractDocumentsResponses[keyof GetV1EmploymentsEmploymentIdContractDocumentsResponses]; -export type PostV1ContractAmendmentsData = { - /** - * Contract Amendment - */ - body?: CreateContractAmendmentParams; - headers: { +export type GetV1CountriesCountryCodeContractorContractDetailsData = { + body?: never; + path: { /** - * Requires a Company-scoped access token obtained through the Authorization Code flow or the Refresh Token flow. - * - * The refresh token needs to have been obtained through the Authorization Code flow. - * + * Country code according to ISO 3-digit alphabetic codes */ - Authorization: string; + country_code: string; }; - path?: never; query?: { + /** + * Employment ID + */ + employment_id?: string; /** * Version of the form schema */ json_schema_version?: number | 'latest'; }; - url: '/v1/contract-amendments'; + url: '/v1/countries/{country_code}/contractor-contract-details'; }; -export type PostV1ContractAmendmentsErrors = { +export type GetV1CountriesCountryCodeContractorContractDetailsErrors = { + /** + * Bad Request + */ + 400: BadRequestResponse; /** * Unauthorized */ @@ -17588,74 +17429,95 @@ export type PostV1ContractAmendmentsErrors = { * Unprocessable Entity */ 422: UnprocessableEntityResponse; + /** + * Unprocessable Entity + */ + 429: TooManyRequestsResponse; }; -export type PostV1ContractAmendmentsError = - PostV1ContractAmendmentsErrors[keyof PostV1ContractAmendmentsErrors]; +export type GetV1CountriesCountryCodeContractorContractDetailsError = + GetV1CountriesCountryCodeContractorContractDetailsErrors[keyof GetV1CountriesCountryCodeContractorContractDetailsErrors]; -export type PostV1ContractAmendmentsResponses = { +export type GetV1CountriesCountryCodeContractorContractDetailsResponses = { /** * Success */ - 200: ContractAmendmentResponse; + 200: ContractorContractDetailsResponse; }; -export type PostV1ContractAmendmentsResponse = - PostV1ContractAmendmentsResponses[keyof PostV1ContractAmendmentsResponses]; +export type GetV1CountriesCountryCodeContractorContractDetailsResponse = + GetV1CountriesCountryCodeContractorContractDetailsResponses[keyof GetV1CountriesCountryCodeContractorContractDetailsResponses]; -export type GetV1EmploymentsEmploymentIdEmploymentAgreementDownloadData = { +export type GetV1ScimV2UsersIdData = { body?: never; path: { /** - * Employment ID + * User ID (slug) */ - employment_id: string; + id: string; }; query?: never; - url: '/v1/employments/{employment_id}/employment-agreement/download'; + url: '/v1/scim/v2/Users/{id}'; }; -export type GetV1EmploymentsEmploymentIdEmploymentAgreementDownloadErrors = { +export type GetV1ScimV2UsersIdErrors = { /** * Unauthorized */ - 401: UnauthorizedResponse; + 401: IntegrationsScimErrorResponse; /** - * Not Found + * Forbidden */ - 404: NotFoundResponse; + 403: IntegrationsScimErrorResponse; /** - * Unprocessable Entity + * Not Found */ - 422: UnprocessableEntityResponse; + 404: IntegrationsScimErrorResponse; }; -export type GetV1EmploymentsEmploymentIdEmploymentAgreementDownloadError = - GetV1EmploymentsEmploymentIdEmploymentAgreementDownloadErrors[keyof GetV1EmploymentsEmploymentIdEmploymentAgreementDownloadErrors]; +export type GetV1ScimV2UsersIdError = + GetV1ScimV2UsersIdErrors[keyof GetV1ScimV2UsersIdErrors]; -export type GetV1EmploymentsEmploymentIdEmploymentAgreementDownloadResponses = { +export type GetV1ScimV2UsersIdResponses = { /** * Success */ - 200: GenericFile; + 200: IntegrationsScimUser; }; -export type GetV1EmploymentsEmploymentIdEmploymentAgreementDownloadResponse = - GetV1EmploymentsEmploymentIdEmploymentAgreementDownloadResponses[keyof GetV1EmploymentsEmploymentIdEmploymentAgreementDownloadResponses]; +export type GetV1ScimV2UsersIdResponse = + GetV1ScimV2UsersIdResponses[keyof GetV1ScimV2UsersIdResponses]; -export type GetV1PayrollRunsPayrollRunIdData = { +export type GetV1EmploymentsEmploymentIdFilesData = { body?: never; path: { /** - * Payroll run ID + * Employment ID */ - payroll_run_id: string; + employment_id: string; }; - query?: never; - url: '/v1/payroll-runs/{payroll_run_id}'; + query?: { + /** + * Filter by file type (optional) + */ + type?: string; + /** + * Filter by file sub_type (optional) + */ + sub_type?: string; + /** + * Starts fetching records after the given page + */ + page?: number; + /** + * Number of items per page + */ + page_size?: number; + }; + url: '/v1/employments/{employment_id}/files'; }; -export type GetV1PayrollRunsPayrollRunIdErrors = { +export type GetV1EmploymentsEmploymentIdFilesErrors = { /** * Unauthorized */ @@ -17670,199 +17532,212 @@ export type GetV1PayrollRunsPayrollRunIdErrors = { 422: UnprocessableEntityResponse; }; -export type GetV1PayrollRunsPayrollRunIdError = - GetV1PayrollRunsPayrollRunIdErrors[keyof GetV1PayrollRunsPayrollRunIdErrors]; +export type GetV1EmploymentsEmploymentIdFilesError = + GetV1EmploymentsEmploymentIdFilesErrors[keyof GetV1EmploymentsEmploymentIdFilesErrors]; -export type GetV1PayrollRunsPayrollRunIdResponses = { +export type GetV1EmploymentsEmploymentIdFilesResponses = { /** * Success */ - 200: PayrollRunResponse; + 200: ListFilesResponse; }; -export type GetV1PayrollRunsPayrollRunIdResponse = - GetV1PayrollRunsPayrollRunIdResponses[keyof GetV1PayrollRunsPayrollRunIdResponses]; +export type GetV1EmploymentsEmploymentIdFilesResponse = + GetV1EmploymentsEmploymentIdFilesResponses[keyof GetV1EmploymentsEmploymentIdFilesResponses]; -export type GetV1ExpensesExpenseIdReceiptData = { - body?: never; - path: { +export type PostV1ContractorsEmploymentsEmploymentIdContractorPlusSubscriptionData = + { /** - * The expense ID + * Manage Contractor Plus subscription params */ - expense_id: string; + body: ManageContractorPlusSubscriptionOperationsParams; + path: { + /** + * Employment ID + */ + employment_id: string; + }; + query?: never; + url: '/v1/contractors/employments/{employment_id}/contractor-plus-subscription'; }; - query?: never; - url: '/v1/expenses/{expense_id}/receipt'; -}; -export type GetV1ExpensesExpenseIdReceiptErrors = { - /** - * Bad Request - */ - 400: BadRequestResponse; - /** - * Unauthorized - */ - 401: UnauthorizedResponse; - /** - * Forbidden - */ - 403: ForbiddenResponse; - /** - * Not Found - */ - 404: NotFoundResponse; - /** - * Unprocessable Entity - */ - 422: UnprocessableEntityResponse; - /** - * Unprocessable Entity - */ - 429: TooManyRequestsResponse; -}; +export type PostV1ContractorsEmploymentsEmploymentIdContractorPlusSubscriptionErrors = + { + /** + * Bad Request + */ + 400: BadRequestResponse; + /** + * Forbidden + */ + 403: ForbiddenResponse; + }; -export type GetV1ExpensesExpenseIdReceiptError = - GetV1ExpensesExpenseIdReceiptErrors[keyof GetV1ExpensesExpenseIdReceiptErrors]; +export type PostV1ContractorsEmploymentsEmploymentIdContractorPlusSubscriptionError = + PostV1ContractorsEmploymentsEmploymentIdContractorPlusSubscriptionErrors[keyof PostV1ContractorsEmploymentsEmploymentIdContractorPlusSubscriptionErrors]; -export type GetV1ExpensesExpenseIdReceiptResponses = { - /** - * Success - */ - 200: GenericFile; -}; +export type PostV1ContractorsEmploymentsEmploymentIdContractorPlusSubscriptionResponses = + { + /** + * Success + */ + 200: SuccessResponse; + }; -export type GetV1ExpensesExpenseIdReceiptResponse = - GetV1ExpensesExpenseIdReceiptResponses[keyof GetV1ExpensesExpenseIdReceiptResponses]; +export type PostV1ContractorsEmploymentsEmploymentIdContractorPlusSubscriptionResponse = + PostV1ContractorsEmploymentsEmploymentIdContractorPlusSubscriptionResponses[keyof PostV1ContractorsEmploymentsEmploymentIdContractorPlusSubscriptionResponses]; -export type GetV1TravelLetterRequestsIdData = { - body?: never; - path: { +export type PostV1ContractorsEligibilityQuestionnaireData = { + /** + * Eligibility questionnaire submission + */ + body: SubmitEligibilityQuestionnaireRequest; + path?: never; + query?: { /** - * travel letter request ID + * Version of the form schema */ - id: UuidSlug; + json_schema_version?: number | 'latest'; }; - query?: never; - url: '/v1/travel-letter-requests/{id}'; + url: '/v1/contractors/eligibility-questionnaire'; }; -export type GetV1TravelLetterRequestsIdErrors = { +export type PostV1ContractorsEligibilityQuestionnaireErrors = { /** * Unauthorized */ 401: UnauthorizedResponse; /** - * Not Found + * Forbidden */ - 404: NotFoundResponse; + 403: ForbiddenResponse; + /** + * Conflict + */ + 409: ConflictErrorResponse; /** * Unprocessable Entity */ 422: UnprocessableEntityResponse; }; -export type GetV1TravelLetterRequestsIdError = - GetV1TravelLetterRequestsIdErrors[keyof GetV1TravelLetterRequestsIdErrors]; +export type PostV1ContractorsEligibilityQuestionnaireError = + PostV1ContractorsEligibilityQuestionnaireErrors[keyof PostV1ContractorsEligibilityQuestionnaireErrors]; -export type GetV1TravelLetterRequestsIdResponses = { +export type PostV1ContractorsEligibilityQuestionnaireResponses = { /** - * Success + * Questionnaire submitted successfully */ - 200: TravelLetterResponse; + 201: EligibilityQuestionnaireResponse; }; -export type GetV1TravelLetterRequestsIdResponse = - GetV1TravelLetterRequestsIdResponses[keyof GetV1TravelLetterRequestsIdResponses]; +export type PostV1ContractorsEligibilityQuestionnaireResponse = + PostV1ContractorsEligibilityQuestionnaireResponses[keyof PostV1ContractorsEligibilityQuestionnaireResponses]; -export type PatchV1TravelLetterRequestsId2Data = { +export type PutV1EmploymentsEmploymentIdBasicInformationData = { /** - * Travel letter Request + * Employment basic information params */ - body: UpdateTravelLetterRequestParams; + body?: EmploymentBasicInformationParams; path: { /** - * Travel letter Request ID + * Employment ID */ - id: string; + employment_id: string; }; query?: never; - url: '/v1/travel-letter-requests/{id}'; + url: '/v1/employments/{employment_id}/basic_information'; }; -export type PatchV1TravelLetterRequestsId2Errors = { +export type PutV1EmploymentsEmploymentIdBasicInformationErrors = { /** - * Unauthorized + * Bad Request */ - 401: UnauthorizedResponse; + 400: BadRequestResponse; /** - * Not Found + * Forbidden */ - 404: NotFoundResponse; + 403: ForbiddenResponse; + /** + * Conflict + */ + 409: ConflictResponse; /** * Unprocessable Entity */ 422: UnprocessableEntityResponse; + /** + * Unprocessable Entity + */ + 429: TooManyRequestsResponse; }; -export type PatchV1TravelLetterRequestsId2Error = - PatchV1TravelLetterRequestsId2Errors[keyof PatchV1TravelLetterRequestsId2Errors]; +export type PutV1EmploymentsEmploymentIdBasicInformationError = + PutV1EmploymentsEmploymentIdBasicInformationErrors[keyof PutV1EmploymentsEmploymentIdBasicInformationErrors]; -export type PatchV1TravelLetterRequestsId2Responses = { +export type PutV1EmploymentsEmploymentIdBasicInformationResponses = { /** * Success */ - 200: TravelLetterResponse; + 200: EmploymentResponse; }; -export type PatchV1TravelLetterRequestsId2Response = - PatchV1TravelLetterRequestsId2Responses[keyof PatchV1TravelLetterRequestsId2Responses]; +export type PutV1EmploymentsEmploymentIdBasicInformationResponse = + PutV1EmploymentsEmploymentIdBasicInformationResponses[keyof PutV1EmploymentsEmploymentIdBasicInformationResponses]; -export type PatchV1TravelLetterRequestsIdData = { - /** - * Travel letter Request - */ - body: UpdateTravelLetterRequestParams; - path: { +export type GetV1ContractorsEmploymentsEmploymentIdCorTerminationRequestsTerminationRequestIdData = + { + body?: never; + path: { + /** + * Employment ID + */ + employment_id: string; + /** + * Termination Request ID + */ + termination_request_id: string; + }; + query?: never; + url: '/v1/contractors/employments/{employment_id}/cor-termination-requests/{termination_request_id}'; + }; + +export type GetV1ContractorsEmploymentsEmploymentIdCorTerminationRequestsTerminationRequestIdErrors = + { /** - * Travel letter Request ID + * Forbidden */ - id: string; + 403: ForbiddenResponse; + /** + * Not Found + */ + 404: NotFoundResponse; }; - query?: never; - url: '/v1/travel-letter-requests/{id}'; -}; -export type PatchV1TravelLetterRequestsIdErrors = { - /** - * Unauthorized - */ - 401: UnauthorizedResponse; - /** - * Not Found - */ - 404: NotFoundResponse; - /** - * Unprocessable Entity - */ - 422: UnprocessableEntityResponse; -}; +export type GetV1ContractorsEmploymentsEmploymentIdCorTerminationRequestsTerminationRequestIdError = + GetV1ContractorsEmploymentsEmploymentIdCorTerminationRequestsTerminationRequestIdErrors[keyof GetV1ContractorsEmploymentsEmploymentIdCorTerminationRequestsTerminationRequestIdErrors]; -export type PatchV1TravelLetterRequestsIdError = - PatchV1TravelLetterRequestsIdErrors[keyof PatchV1TravelLetterRequestsIdErrors]; +export type GetV1ContractorsEmploymentsEmploymentIdCorTerminationRequestsTerminationRequestIdResponses = + { + /** + * Success + */ + 200: CorTerminationRequestResponse; + }; -export type PatchV1TravelLetterRequestsIdResponses = { +export type GetV1ContractorsEmploymentsEmploymentIdCorTerminationRequestsTerminationRequestIdResponse = + GetV1ContractorsEmploymentsEmploymentIdCorTerminationRequestsTerminationRequestIdResponses[keyof GetV1ContractorsEmploymentsEmploymentIdCorTerminationRequestsTerminationRequestIdResponses]; + +export type PostV1SandboxCompaniesCompanyIdLegalEntitiesData = { /** - * Success + * Create legal entity params */ - 200: TravelLetterResponse; -}; - -export type PatchV1TravelLetterRequestsIdResponse = - PatchV1TravelLetterRequestsIdResponses[keyof PatchV1TravelLetterRequestsIdResponses]; - -export type GetV1TimeoffBalancesEmploymentIdData = { - body?: never; + body?: { + /** + * ISO 3166-1 alpha-3 country code + */ + country_code: string; + }; headers: { /** * Requires a Company-scoped access token obtained through the Authorization Code flow or the Refresh Token flow. @@ -17874,15 +17749,15 @@ export type GetV1TimeoffBalancesEmploymentIdData = { }; path: { /** - * Employment ID for which to show the time off balance + * Company ID */ - employment_id: string; + company_id: string; }; query?: never; - url: '/v1/timeoff-balances/{employment_id}'; + url: '/v1/sandbox/companies/{company_id}/legal-entities'; }; -export type GetV1TimeoffBalancesEmploymentIdErrors = { +export type PostV1SandboxCompaniesCompanyIdLegalEntitiesErrors = { /** * Bad Request */ @@ -17892,9 +17767,9 @@ export type GetV1TimeoffBalancesEmploymentIdErrors = { */ 401: UnauthorizedResponse; /** - * TimeoffBalanceNotFoundResponse + * Not Found */ - 404: TimeoffBalanceNotFoundResponse; + 404: NotFoundResponse; /** * Unprocessable Entity */ @@ -17905,44 +17780,47 @@ export type GetV1TimeoffBalancesEmploymentIdErrors = { 429: TooManyRequestsResponse; }; -export type GetV1TimeoffBalancesEmploymentIdError = - GetV1TimeoffBalancesEmploymentIdErrors[keyof GetV1TimeoffBalancesEmploymentIdErrors]; +export type PostV1SandboxCompaniesCompanyIdLegalEntitiesError = + PostV1SandboxCompaniesCompanyIdLegalEntitiesErrors[keyof PostV1SandboxCompaniesCompanyIdLegalEntitiesErrors]; -export type GetV1TimeoffBalancesEmploymentIdResponses = { +export type PostV1SandboxCompaniesCompanyIdLegalEntitiesResponses = { /** - * Success + * Legal entity created */ - 200: TimeoffBalanceResponse; + 201: { + data?: { + /** + * Legal entity slug + */ + legal_entity_id?: string; + /** + * Legal entity name + */ + name?: string; + /** + * Legal entity status + */ + status?: string; + }; + }; }; -export type GetV1TimeoffBalancesEmploymentIdResponse = - GetV1TimeoffBalancesEmploymentIdResponses[keyof GetV1TimeoffBalancesEmploymentIdResponses]; +export type PostV1SandboxCompaniesCompanyIdLegalEntitiesResponse = + PostV1SandboxCompaniesCompanyIdLegalEntitiesResponses[keyof PostV1SandboxCompaniesCompanyIdLegalEntitiesResponses]; -export type GetV1ExpensesCategoriesData = { +export type GetV1EmployeePersonalDetailsData = { body?: never; path?: never; query?: { /** - * The employment ID for which to list categories. Required if neither expense_id nor country_code is provided. - */ - employment_id?: string; - /** - * The expense ID for which to list categories (includes the expense's category, even if it is not selectable by default). If provided without employment_id, will use the expense's employment context. - */ - expense_id?: string; - /** - * Include un-selectable intermediate categories in the response - */ - include_parents?: boolean; - /** - * Filter categories by country (ISO 3166-1 alpha-3 code, e.g. "GBR"). Only used when neither employment_id nor expense_id is provided. + * Version of the personal_details form schema */ - country_code?: string; + personal_details_json_schema_version?: number | 'latest'; }; - url: '/v1/expenses/categories'; + url: '/v1/employee/personal-details'; }; -export type GetV1ExpensesCategoriesErrors = { +export type GetV1EmployeePersonalDetailsErrors = { /** * Bad Request */ @@ -17951,6 +17829,10 @@ export type GetV1ExpensesCategoriesErrors = { * Unauthorized */ 401: UnauthorizedResponse; + /** + * Forbidden + */ + 403: ForbiddenResponse; /** * Not Found */ @@ -17958,42 +17840,38 @@ export type GetV1ExpensesCategoriesErrors = { /** * Unprocessable Entity */ - 422: UnprocessableEntityResponse; - /** - * Too many requests - */ 429: TooManyRequestsResponse; }; -export type GetV1ExpensesCategoriesError = - GetV1ExpensesCategoriesErrors[keyof GetV1ExpensesCategoriesErrors]; +export type GetV1EmployeePersonalDetailsError = + GetV1EmployeePersonalDetailsErrors[keyof GetV1EmployeePersonalDetailsErrors]; -export type GetV1ExpensesCategoriesResponses = { +export type GetV1EmployeePersonalDetailsResponses = { /** * Success */ - 200: ListExpenseCategoriesResponse; + 200: EmploymentDetailsOnlyResponse; }; -export type GetV1ExpensesCategoriesResponse = - GetV1ExpensesCategoriesResponses[keyof GetV1ExpensesCategoriesResponses]; +export type GetV1EmployeePersonalDetailsResponse = + GetV1EmployeePersonalDetailsResponses[keyof GetV1EmployeePersonalDetailsResponses]; -export type PostV1EmployeeTimeoffIdCancelData = { +export type PutV1EmployeePersonalDetailsData = { /** - * CancelTimeoff + * Employee personal details params */ - body: CancelTimeoffParams; - path: { + body?: EmploymentPersonalDetailsParams; + path?: never; + query?: { /** - * Timeoff ID + * Version of the personal_details form schema */ - id: string; + personal_details_json_schema_version?: number | 'latest'; }; - query?: never; - url: '/v1/employee/timeoff/{id}/cancel'; + url: '/v1/employee/personal-details'; }; -export type PostV1EmployeeTimeoffIdCancelErrors = { +export type PutV1EmployeePersonalDetailsErrors = { /** * Bad Request */ @@ -18002,6 +17880,10 @@ export type PostV1EmployeeTimeoffIdCancelErrors = { * Unauthorized */ 401: UnauthorizedResponse; + /** + * Forbidden + */ + 403: ForbiddenResponse; /** * Not Found */ @@ -18016,66 +17898,50 @@ export type PostV1EmployeeTimeoffIdCancelErrors = { 429: TooManyRequestsResponse; }; -export type PostV1EmployeeTimeoffIdCancelError = - PostV1EmployeeTimeoffIdCancelErrors[keyof PostV1EmployeeTimeoffIdCancelErrors]; +export type PutV1EmployeePersonalDetailsError = + PutV1EmployeePersonalDetailsErrors[keyof PutV1EmployeePersonalDetailsErrors]; -export type PostV1EmployeeTimeoffIdCancelResponses = { +export type PutV1EmployeePersonalDetailsResponses = { /** * Success */ - 200: TimeoffResponse; + 200: EmploymentDetailsOnlyResponse; }; -export type PostV1EmployeeTimeoffIdCancelResponse = - PostV1EmployeeTimeoffIdCancelResponses[keyof PostV1EmployeeTimeoffIdCancelResponses]; +export type PutV1EmployeePersonalDetailsResponse = + PutV1EmployeePersonalDetailsResponses[keyof PutV1EmployeePersonalDetailsResponses]; -export type GetV1CountriesCountryCodeFormData = { +export type GetV1WdGphPayDetailDataData = { body?: never; - headers: { - /** - * Requires a Company-scoped access token obtained through the Authorization Code flow or the Refresh Token flow. - * - * The refresh token needs to have been obtained through the Authorization Code flow. - * - */ - Authorization: string; - }; - path: { - /** - * Country code according to ISO 3-digit alphabetic codes - */ - country_code: string; + headers?: { /** - * Name of the desired form + * The preferred language of the inquiring user in Workday */ - form: string; + accept_language?: string; }; - query?: { - /** - * Required for `contract_amendment` and `global_payroll_state_taxes` forms - */ - employment_id?: string; + path?: never; + query: { /** - * Two-letter US state code. Required for `global_payroll_state_taxes` (e.g. `NY`). + * The pay group ID for identifying the pay group at the vendor system */ - jurisdiction?: string; + payGroupExternalId: string; /** - * FOR TESTING PURPOSES ONLY: Include scheduled benefit groups. + * The run type id provided in the paySummary API */ - only_for_testing_include_scheduled_benefit_groups?: boolean; + runTypeId: string; /** - * Skips the dynamic benefits part of the schema if set. To be used when benefits are set via its own API. + * The cycle type id, defaults to the main run if not provided */ - skip_benefits?: boolean; + cycleTypeId?: string; /** - * Version of the form schema + * The period end date in question, defaults to current period if not provided */ - json_schema_version?: number | 'latest'; + periodEndDate?: Date; }; - url: '/v1/countries/{country_code}/{form}'; + url: '/v1/wd/gph/payDetailData'; }; -export type GetV1CountriesCountryCodeFormErrors = { +export type GetV1WdGphPayDetailDataErrors = { /** * Bad Request */ @@ -18088,147 +17954,124 @@ export type GetV1CountriesCountryCodeFormErrors = { * Not Found */ 404: NotFoundResponse; - /** - * Unprocessable Entity - */ - 422: UnprocessableEntityResponse; - /** - * Unprocessable Entity - */ - 429: TooManyRequestsResponse; }; -export type GetV1CountriesCountryCodeFormError = - GetV1CountriesCountryCodeFormErrors[keyof GetV1CountriesCountryCodeFormErrors]; +export type GetV1WdGphPayDetailDataError = + GetV1WdGphPayDetailDataErrors[keyof GetV1WdGphPayDetailDataErrors]; -export type GetV1CountriesCountryCodeFormResponses = { +export type GetV1WdGphPayDetailDataResponses = { /** * Success */ - 200: CountryFormResponse; + 200: PayDetailDataResponse; }; -export type GetV1CountriesCountryCodeFormResponse = - GetV1CountriesCountryCodeFormResponses[keyof GetV1CountriesCountryCodeFormResponses]; +export type GetV1WdGphPayDetailDataResponse = + GetV1WdGphPayDetailDataResponses[keyof GetV1WdGphPayDetailDataResponses]; -export type GetV1FilesIdData = { +export type GetV1CostCalculatorRegionsSlugFieldsData = { body?: never; path: { /** - * File ID + * Slug */ - id: string; + slug: string; }; - query?: never; - url: '/v1/files/{id}'; + query?: { + /** + * If the premium benefits should be included in the response + */ + include_premium_benefits?: boolean; + }; + url: '/v1/cost-calculator/regions/{slug}/fields'; }; -export type GetV1FilesIdErrors = { +export type GetV1CostCalculatorRegionsSlugFieldsErrors = { /** * Unauthorized */ 401: UnauthorizedResponse; /** - * Not Found - */ - 404: NotFoundResponse; - /** - * Unprocessable Entity + * Internal Server Error */ - 422: UnprocessableEntityResponse; + 500: InternalServerErrorResponse; }; -export type GetV1FilesIdError = GetV1FilesIdErrors[keyof GetV1FilesIdErrors]; +export type GetV1CostCalculatorRegionsSlugFieldsError = + GetV1CostCalculatorRegionsSlugFieldsErrors[keyof GetV1CostCalculatorRegionsSlugFieldsErrors]; -export type GetV1FilesIdResponses = { +export type GetV1CostCalculatorRegionsSlugFieldsResponses = { /** * Success */ - 200: DownloadFileResponse; + 200: JsonSchemaResponse; }; -export type GetV1FilesIdResponse = - GetV1FilesIdResponses[keyof GetV1FilesIdResponses]; +export type GetV1CostCalculatorRegionsSlugFieldsResponse = + GetV1CostCalculatorRegionsSlugFieldsResponses[keyof GetV1CostCalculatorRegionsSlugFieldsResponses]; -export type GetV1ContractAmendmentsIdData = { +export type PostV1CancelOnboardingEmploymentIdData = { body?: never; - headers: { + path: { /** - * Requires a Company-scoped access token obtained through the Authorization Code flow or the Refresh Token flow. - * - * The refresh token needs to have been obtained through the Authorization Code flow. - * + * Employment ID */ - Authorization: string; + employment_id: string; }; - path: { + query?: { /** - * Contract amendment request ID + * Whether the request should be performed async + * */ - id: string; + async?: boolean; }; - query?: never; - url: '/v1/contract-amendments/{id}'; + url: '/v1/cancel-onboarding/{employment_id}'; }; -export type GetV1ContractAmendmentsIdErrors = { +export type PostV1CancelOnboardingEmploymentIdErrors = { /** - * Unauthorized + * Bad Request */ - 401: UnauthorizedResponse; + 400: BadRequestResponse; /** - * Not Found + * Unprocessable Entity */ - 404: NotFoundResponse; + 422: UnprocessableEntityResponse; /** * Unprocessable Entity */ - 422: UnprocessableEntityResponse; + 429: TooManyRequestsResponse; }; -export type GetV1ContractAmendmentsIdError = - GetV1ContractAmendmentsIdErrors[keyof GetV1ContractAmendmentsIdErrors]; +export type PostV1CancelOnboardingEmploymentIdError = + PostV1CancelOnboardingEmploymentIdErrors[keyof PostV1CancelOnboardingEmploymentIdErrors]; -export type GetV1ContractAmendmentsIdResponses = { +export type PostV1CancelOnboardingEmploymentIdResponses = { /** * Success */ - 200: ContractAmendmentResponse; + 200: SuccessResponse; }; -export type GetV1ContractAmendmentsIdResponse = - GetV1ContractAmendmentsIdResponses[keyof GetV1ContractAmendmentsIdResponses]; +export type PostV1CancelOnboardingEmploymentIdResponse = + PostV1CancelOnboardingEmploymentIdResponses[keyof PostV1CancelOnboardingEmploymentIdResponses]; -export type GetV1CompanyManagersData = { - body?: never; - headers: { - /** - * Requires a Company-scoped access token obtained through the Authorization Code flow or the Refresh Token flow. - * - * The refresh token needs to have been obtained through the Authorization Code flow. - * - */ - Authorization: string; - }; - path?: never; - query?: { - /** - * A Company ID to filter the results (only applicable for Integration Partners). - */ - company_id?: string; - /** - * Starts fetching records after the given page - */ - page?: number; +export type PostV1EmployeeTimeoffIdCancelData = { + /** + * CancelTimeoff + */ + body: CancelTimeoffParams; + path: { /** - * Change the amount of records returned per page, defaults to 20, limited to 100 + * Timeoff ID */ - page_size?: number; + id: string; }; - url: '/v1/company-managers'; + query?: never; + url: '/v1/employee/timeoff/{id}/cancel'; }; -export type GetV1CompanyManagersErrors = { +export type PostV1EmployeeTimeoffIdCancelErrors = { /** * Bad Request */ @@ -18246,52 +18089,37 @@ export type GetV1CompanyManagersErrors = { */ 422: UnprocessableEntityResponse; /** - * Too many requests + * Unprocessable Entity */ 429: TooManyRequestsResponse; }; -export type GetV1CompanyManagersError = - GetV1CompanyManagersErrors[keyof GetV1CompanyManagersErrors]; +export type PostV1EmployeeTimeoffIdCancelError = + PostV1EmployeeTimeoffIdCancelErrors[keyof PostV1EmployeeTimeoffIdCancelErrors]; -export type GetV1CompanyManagersResponses = { +export type PostV1EmployeeTimeoffIdCancelResponses = { /** * Success */ - 200: CompanyManagersResponse; + 200: TimeoffResponse; }; -export type GetV1CompanyManagersResponse = - GetV1CompanyManagersResponses[keyof GetV1CompanyManagersResponses]; +export type PostV1EmployeeTimeoffIdCancelResponse = + PostV1EmployeeTimeoffIdCancelResponses[keyof PostV1EmployeeTimeoffIdCancelResponses]; -export type PostV1CompanyManagersData = { - /** - * Company Manager params - */ - body?: CompanyManagerParams; - headers: { - /** - * Requires a Company-scoped access token obtained through the Authorization Code flow or the Refresh Token flow. - * - * The refresh token needs to have been obtained through the Authorization Code flow. - * - */ - Authorization: string; - }; - path?: never; - query?: { +export type GetV1ExpensesExpenseIdReceiptData = { + body?: never; + path: { /** - * Complementary action(s) to perform when creating a company manager: - * - * - `no_invite` skips the email invitation step - * + * The expense ID */ - actions?: string; + expense_id: string; }; - url: '/v1/company-managers'; + query?: never; + url: '/v1/expenses/{expense_id}/receipt'; }; -export type PostV1CompanyManagersErrors = { +export type GetV1ExpensesExpenseIdReceiptErrors = { /** * Bad Request */ @@ -18300,6 +18128,10 @@ export type PostV1CompanyManagersErrors = { * Unauthorized */ 401: UnauthorizedResponse; + /** + * Forbidden + */ + 403: ForbiddenResponse; /** * Not Found */ @@ -18309,47 +18141,65 @@ export type PostV1CompanyManagersErrors = { */ 422: UnprocessableEntityResponse; /** - * Too many requests + * Unprocessable Entity */ 429: TooManyRequestsResponse; }; -export type PostV1CompanyManagersError = - PostV1CompanyManagersErrors[keyof PostV1CompanyManagersErrors]; +export type GetV1ExpensesExpenseIdReceiptError = + GetV1ExpensesExpenseIdReceiptErrors[keyof GetV1ExpensesExpenseIdReceiptErrors]; -export type PostV1CompanyManagersResponses = { +export type GetV1ExpensesExpenseIdReceiptResponses = { /** * Success */ - 201: CompanyManagerData; + 200: GenericFile; }; -export type PostV1CompanyManagersResponse = - PostV1CompanyManagersResponses[keyof PostV1CompanyManagersResponses]; +export type GetV1ExpensesExpenseIdReceiptResponse = + GetV1ExpensesExpenseIdReceiptResponses[keyof GetV1ExpensesExpenseIdReceiptResponses]; -export type GetV1CostCalculatorCountriesData = { +export type GetV1BenefitOffersCountrySummariesData = { body?: never; - path?: never; - query?: { + headers: { /** - * If the premium benefits should be included in the response + * Requires a Company-scoped access token obtained through the Authorization Code flow or the Refresh Token flow. + * + * The refresh token needs to have been obtained through the Authorization Code flow. + * */ - include_premium_benefits?: boolean; + Authorization: string; }; - url: '/v1/cost-calculator/countries'; + path?: never; + query?: never; + url: '/v1/benefit-offers/country-summaries'; }; -export type GetV1CostCalculatorCountriesResponses = { +export type GetV1BenefitOffersCountrySummariesErrors = { + /** + * Not Found + */ + 404: NotFoundResponse; + /** + * Unprocessable Entity + */ + 422: UnprocessableEntityResponse; +}; + +export type GetV1BenefitOffersCountrySummariesError = + GetV1BenefitOffersCountrySummariesErrors[keyof GetV1BenefitOffersCountrySummariesErrors]; + +export type GetV1BenefitOffersCountrySummariesResponses = { /** * Success */ - 200: CostCalculatorListCountryResponse; + 200: CountrySummariesResponse; }; -export type GetV1CostCalculatorCountriesResponse = - GetV1CostCalculatorCountriesResponses[keyof GetV1CostCalculatorCountriesResponses]; +export type GetV1BenefitOffersCountrySummariesResponse = + GetV1BenefitOffersCountrySummariesResponses[keyof GetV1BenefitOffersCountrySummariesResponses]; -export type PostV1IdentityVerificationEmploymentIdDeclineData = { +export type GetV1LeavePoliciesDetailsEmploymentIdData = { body?: never; path: { /** @@ -18358,10 +18208,10 @@ export type PostV1IdentityVerificationEmploymentIdDeclineData = { employment_id: string; }; query?: never; - url: '/v1/identity-verification/{employment_id}/decline'; + url: '/v1/leave-policies/details/{employment_id}'; }; -export type PostV1IdentityVerificationEmploymentIdDeclineErrors = { +export type GetV1LeavePoliciesDetailsEmploymentIdErrors = { /** * Unauthorized */ @@ -18376,87 +18226,62 @@ export type PostV1IdentityVerificationEmploymentIdDeclineErrors = { 422: UnprocessableEntityResponse; }; -export type PostV1IdentityVerificationEmploymentIdDeclineError = - PostV1IdentityVerificationEmploymentIdDeclineErrors[keyof PostV1IdentityVerificationEmploymentIdDeclineErrors]; +export type GetV1LeavePoliciesDetailsEmploymentIdError = + GetV1LeavePoliciesDetailsEmploymentIdErrors[keyof GetV1LeavePoliciesDetailsEmploymentIdErrors]; -export type PostV1IdentityVerificationEmploymentIdDeclineResponses = { +export type GetV1LeavePoliciesDetailsEmploymentIdResponses = { /** * Success */ - 200: SuccessResponse; + 200: ListLeavePoliciesDetailsResponse; }; -export type PostV1IdentityVerificationEmploymentIdDeclineResponse = - PostV1IdentityVerificationEmploymentIdDeclineResponses[keyof PostV1IdentityVerificationEmploymentIdDeclineResponses]; - -export type GetV1OnboardingEmploymentsEmploymentIdPreOnboardingDocumentsIdData = - { - body?: never; - path: { - /** - * Employment ID - */ - employment_id: string; - /** - * Pre-onboarding document ID - */ - id: string; - }; - query?: never; - url: '/v1/onboarding/employments/{employment_id}/pre-onboarding-documents/{id}'; - }; +export type GetV1LeavePoliciesDetailsEmploymentIdResponse = + GetV1LeavePoliciesDetailsEmploymentIdResponses[keyof GetV1LeavePoliciesDetailsEmploymentIdResponses]; -export type GetV1OnboardingEmploymentsEmploymentIdPreOnboardingDocumentsIdErrors = - { +export type GetV1WorkAuthorizationRequestsData = { + body?: never; + path?: never; + query?: { /** - * Unauthorized + * Filter results on the given status */ - 401: UnauthorizedResponse; + status?: + | 'pending' + | 'cancelled' + | 'declined_by_manager' + | 'declined_by_remote' + | 'approved_by_manager' + | 'approved_by_remote'; /** - * Forbidden + * Filter results on the given employment slug */ - 403: ForbiddenResponse; + employment_id?: string; /** - * Not Found + * Filter results on the given employee name */ - 404: NotFoundResponse; - }; - -export type GetV1OnboardingEmploymentsEmploymentIdPreOnboardingDocumentsIdError = - GetV1OnboardingEmploymentsEmploymentIdPreOnboardingDocumentsIdErrors[keyof GetV1OnboardingEmploymentsEmploymentIdPreOnboardingDocumentsIdErrors]; - -export type GetV1OnboardingEmploymentsEmploymentIdPreOnboardingDocumentsIdResponses = - { + employee_name?: string; /** - * Success + * Sort order */ - 200: ShowPreOnboardingDocumentResponse; - }; - -export type GetV1OnboardingEmploymentsEmploymentIdPreOnboardingDocumentsIdResponse = - GetV1OnboardingEmploymentsEmploymentIdPreOnboardingDocumentsIdResponses[keyof GetV1OnboardingEmploymentsEmploymentIdPreOnboardingDocumentsIdResponses]; - -export type GetV1CountriesCountryCodeEngagementAgreementDetailsData = { - body?: never; - path: { + order?: 'asc' | 'desc'; /** - * Country code according to ISO 3-digit alphabetic codes + * Field to sort by */ - country_code: string; + sort_by?: 'submitted_at'; + /** + * Starts fetching records after the given page + */ + page?: number; + /** + * Number of items per page + */ + page_size?: number; }; - query?: never; - url: '/v1/countries/{country_code}/engagement-agreement-details'; + url: '/v1/work-authorization-requests'; }; -export type GetV1CountriesCountryCodeEngagementAgreementDetailsErrors = { - /** - * Bad Request - */ - 400: BadRequestResponse; - /** - * Unauthorized - */ - 401: UnauthorizedResponse; +export type GetV1WorkAuthorizationRequestsErrors = { /** * Not Found */ @@ -18465,42 +18290,30 @@ export type GetV1CountriesCountryCodeEngagementAgreementDetailsErrors = { * Unprocessable Entity */ 422: UnprocessableEntityResponse; - /** - * Unprocessable Entity - */ - 429: TooManyRequestsResponse; }; -export type GetV1CountriesCountryCodeEngagementAgreementDetailsError = - GetV1CountriesCountryCodeEngagementAgreementDetailsErrors[keyof GetV1CountriesCountryCodeEngagementAgreementDetailsErrors]; +export type GetV1WorkAuthorizationRequestsError = + GetV1WorkAuthorizationRequestsErrors[keyof GetV1WorkAuthorizationRequestsErrors]; -export type GetV1CountriesCountryCodeEngagementAgreementDetailsResponses = { +export type GetV1WorkAuthorizationRequestsResponses = { /** * Success */ - 200: EngagementAgreementDetailsResponse; + 200: ListWorkAuthorizationRequestsResponse; }; -export type GetV1CountriesCountryCodeEngagementAgreementDetailsResponse = - GetV1CountriesCountryCodeEngagementAgreementDetailsResponses[keyof GetV1CountriesCountryCodeEngagementAgreementDetailsResponses]; +export type GetV1WorkAuthorizationRequestsResponse = + GetV1WorkAuthorizationRequestsResponses[keyof GetV1WorkAuthorizationRequestsResponses]; -export type GetV1BillingDocumentsData = { +export type GetV1EmploymentsEmploymentIdBenefitOffersData = { body?: never; - headers: { + path: { /** - * Requires a Company-scoped access token obtained through the Authorization Code flow or the Refresh Token flow. - * - * The refresh token needs to have been obtained through the Authorization Code flow. - * + * Unique identifier of the employment */ - Authorization: string; + employment_id: UuidSlug; }; - path?: never; query?: { - /** - * The month for the billing documents (in ISO-8601 format) - */ - period?: string; /** * Starts fetching records after the given page */ @@ -18510,14 +18323,18 @@ export type GetV1BillingDocumentsData = { */ page_size?: number; }; - url: '/v1/billing-documents'; + url: '/v1/employments/{employment_id}/benefit-offers'; }; -export type GetV1BillingDocumentsErrors = { +export type GetV1EmploymentsEmploymentIdBenefitOffersErrors = { /** * Unauthorized */ 401: UnauthorizedResponse; + /** + * Forbidden + */ + 403: ForbiddenResponse; /** * Not Found */ @@ -18528,45 +18345,48 @@ export type GetV1BillingDocumentsErrors = { 422: UnprocessableEntityResponse; }; -export type GetV1BillingDocumentsError = - GetV1BillingDocumentsErrors[keyof GetV1BillingDocumentsErrors]; +export type GetV1EmploymentsEmploymentIdBenefitOffersError = + GetV1EmploymentsEmploymentIdBenefitOffersErrors[keyof GetV1EmploymentsEmploymentIdBenefitOffersErrors]; -export type GetV1BillingDocumentsResponses = { +export type GetV1EmploymentsEmploymentIdBenefitOffersResponses = { /** * Success */ - 200: BillingDocumentsResponse; + 200: EmploymentsBenefitOffersListBenefitOffers; }; -export type GetV1BillingDocumentsResponse = - GetV1BillingDocumentsResponses[keyof GetV1BillingDocumentsResponses]; +export type GetV1EmploymentsEmploymentIdBenefitOffersResponse = + GetV1EmploymentsEmploymentIdBenefitOffersResponses[keyof GetV1EmploymentsEmploymentIdBenefitOffersResponses]; -export type DeleteV1WebhookCallbacksIdData = { - body?: never; - headers: { +export type PutV1EmploymentsEmploymentIdBenefitOffersData = { + /** + * Upsert employment benefit offers request + */ + body: UnifiedEmploymentUpsertBenefitOffersRequest; + path: { /** - * Requires a Company-scoped access token obtained through the Authorization Code flow or the Refresh Token flow. - * - * The refresh token needs to have been obtained through the Authorization Code flow. - * + * Unique identifier of the employment */ - Authorization: string; + employment_id: UuidSlug; }; - path: { + query?: { /** - * Webhook Callback ID + * Version of the form schema */ - id: string; + json_schema_version?: number | 'latest'; }; - query?: never; - url: '/v1/webhook-callbacks/{id}'; + url: '/v1/employments/{employment_id}/benefit-offers'; }; -export type DeleteV1WebhookCallbacksIdErrors = { +export type PutV1EmploymentsEmploymentIdBenefitOffersErrors = { /** * Unauthorized */ 401: UnauthorizedResponse; + /** + * Forbidden + */ + 403: ForbiddenResponse; /** * Not Found */ @@ -18577,89 +18397,146 @@ export type DeleteV1WebhookCallbacksIdErrors = { 422: UnprocessableEntityResponse; }; -export type DeleteV1WebhookCallbacksIdError = - DeleteV1WebhookCallbacksIdErrors[keyof DeleteV1WebhookCallbacksIdErrors]; +export type PutV1EmploymentsEmploymentIdBenefitOffersError = + PutV1EmploymentsEmploymentIdBenefitOffersErrors[keyof PutV1EmploymentsEmploymentIdBenefitOffersErrors]; -export type DeleteV1WebhookCallbacksIdResponses = { +export type PutV1EmploymentsEmploymentIdBenefitOffersResponses = { /** * Success */ 200: SuccessResponse; }; -export type DeleteV1WebhookCallbacksIdResponse = - DeleteV1WebhookCallbacksIdResponses[keyof DeleteV1WebhookCallbacksIdResponses]; +export type PutV1EmploymentsEmploymentIdBenefitOffersResponse = + PutV1EmploymentsEmploymentIdBenefitOffersResponses[keyof PutV1EmploymentsEmploymentIdBenefitOffersResponses]; -export type PatchV1WebhookCallbacksIdData = { - /** - * WebhookCallback - */ - body?: UpdateWebhookCallbackParams; - path: { +export type GetV1EmploymentsData = { + body?: never; + headers: { /** - * Webhook Callback ID + * Requires a Company-scoped access token obtained through the Authorization Code flow or the Refresh Token flow. + * + * The refresh token needs to have been obtained through the Authorization Code flow. + * */ - id: string; + Authorization: string; }; - query?: never; - url: '/v1/webhook-callbacks/{id}'; + path?: never; + query?: { + /** + * Company ID + */ + company_id?: string; + /** + * Filters the results by employments whose login email matches the value + */ + email?: string; + /** + * Filters the results by employments whose status matches the value. + * Supports multiple values separated by commas. + * Also supports the value `incomplete` to get all employments that are not onboarded yet. + * + */ + status?: string; + /** + * Filters the results by employments whose employment product type matches the value + */ + employment_type?: string; + /** + * Filters the results by employments whose employment model matches the value. + * Possible values: `global_payroll`, `peo`, `eor` + * + */ + employment_model?: 'global_payroll' | 'peo' | 'eor'; + /** + * Filters the results by the employment's short ID. Returns at most one result. + */ + short_id?: string; + /** + * Starts fetching records after the given page + */ + page?: number; + /** + * Number of items per page + */ + page_size?: number; + }; + url: '/v1/employments'; }; -export type PatchV1WebhookCallbacksIdErrors = { +export type GetV1EmploymentsErrors = { /** - * Unauthorized + * Bad Request */ - 401: UnauthorizedResponse; + 400: BadRequestResponse; /** - * Not Found + * Forbidden */ - 404: NotFoundResponse; + 403: ForbiddenResponse; + /** + * Conflict + */ + 409: ConflictResponse; /** * Unprocessable Entity */ 422: UnprocessableEntityResponse; + /** + * Unprocessable Entity + */ + 429: TooManyRequestsResponse; }; -export type PatchV1WebhookCallbacksIdError = - PatchV1WebhookCallbacksIdErrors[keyof PatchV1WebhookCallbacksIdErrors]; +export type GetV1EmploymentsError = + GetV1EmploymentsErrors[keyof GetV1EmploymentsErrors]; -export type PatchV1WebhookCallbacksIdResponses = { +export type GetV1EmploymentsResponses = { /** * Success */ - 200: WebhookCallbackResponse; + 200: ListEmploymentsResponse; }; -export type PatchV1WebhookCallbacksIdResponse = - PatchV1WebhookCallbacksIdResponses[keyof PatchV1WebhookCallbacksIdResponses]; +export type GetV1EmploymentsResponse = + GetV1EmploymentsResponses[keyof GetV1EmploymentsResponses]; -export type PutV1EmployeeFederalTaxesData = { +export type PostV1EmploymentsData = { /** - * Employee federal taxes params + * Employment params */ - body?: EmploymentFederalTaxesParams; + body?: EmploymentCreateParams; + headers: { + /** + * Requires a Company-scoped access token obtained through the Authorization Code flow or the Refresh Token flow. + * + * The refresh token needs to have been obtained through the Authorization Code flow. + * + */ + Authorization: string; + }; path?: never; - query?: never; - url: '/v1/employee/federal-taxes'; + query?: { + /** + * Version of the form schema + */ + json_schema_version?: number | 'latest'; + }; + url: '/v1/employments'; }; -export type PutV1EmployeeFederalTaxesErrors = { +export type PostV1EmploymentsErrors = { /** * Bad Request */ 400: BadRequestResponse; - /** - * Unauthorized - */ - 401: UnauthorizedResponse; /** * Forbidden */ 403: ForbiddenResponse; /** - * Not Found + * Conflict */ - 404: NotFoundResponse; + 409: ConflictResponse; /** * Unprocessable Entity */ @@ -18670,84 +18547,101 @@ export type PutV1EmployeeFederalTaxesErrors = { 429: TooManyRequestsResponse; }; -export type PutV1EmployeeFederalTaxesError = - PutV1EmployeeFederalTaxesErrors[keyof PutV1EmployeeFederalTaxesErrors]; +export type PostV1EmploymentsError = + PostV1EmploymentsErrors[keyof PostV1EmploymentsErrors]; -export type PutV1EmployeeFederalTaxesResponses = { +export type PostV1EmploymentsResponses = { /** * Success */ - 200: SuccessResponse; + 200: EmploymentCreationResponse; }; -export type PutV1EmployeeFederalTaxesResponse = - PutV1EmployeeFederalTaxesResponses[keyof PutV1EmployeeFederalTaxesResponses]; +export type PostV1EmploymentsResponse = + PostV1EmploymentsResponses[keyof PostV1EmploymentsResponses]; -export type GetV1EmployeeTimesheetsData = { +export type GetV1TimeoffIdData = { body?: never; - path?: never; - query?: { + headers: { /** - * Starts fetching records after the given page + * Requires a Company-scoped access token obtained through the Authorization Code flow or the Refresh Token flow. + * + * The refresh token needs to have been obtained through the Authorization Code flow. + * */ - page?: number; + Authorization: string; + }; + path: { /** - * Number of items per page + * Timeoff ID */ - page_size?: number; + id: string; }; - url: '/v1/employee/timesheets'; + query?: never; + url: '/v1/timeoff/{id}'; }; -export type GetV1EmployeeTimesheetsErrors = { +export type GetV1TimeoffIdErrors = { /** - * Unauthorized + * Bad Request */ - 401: UnauthorizedResponse; + 400: BadRequestResponse; /** - * Forbidden + * Unauthorized */ - 403: ForbiddenResponse; + 401: UnauthorizedResponse; /** * Not Found */ 404: NotFoundResponse; + /** + * Unprocessable Entity + */ + 422: UnprocessableEntityResponse; + /** + * Unprocessable Entity + */ + 429: TooManyRequestsResponse; }; -export type GetV1EmployeeTimesheetsError = - GetV1EmployeeTimesheetsErrors[keyof GetV1EmployeeTimesheetsErrors]; +export type GetV1TimeoffIdError = + GetV1TimeoffIdErrors[keyof GetV1TimeoffIdErrors]; -export type GetV1EmployeeTimesheetsResponses = { +export type GetV1TimeoffIdResponses = { /** * Success */ - 200: SuccessResponse; + 200: TimeoffResponse; }; -export type GetV1EmployeeTimesheetsResponse = - GetV1EmployeeTimesheetsResponses[keyof GetV1EmployeeTimesheetsResponses]; +export type GetV1TimeoffIdResponse = + GetV1TimeoffIdResponses[keyof GetV1TimeoffIdResponses]; -export type PutV2EmploymentsEmploymentIdEmergencyContactData = { +export type PatchV1TimeoffId2Data = { /** - * Employment emergency contact params + * UpdateTimeoff */ - body?: EmploymentEmergencyContactParams; - path: { + body: UpdateApprovedTimeoffParams; + headers: { /** - * Employment ID + * Requires a Company-scoped access token obtained through the Authorization Code flow or the Refresh Token flow. + * + * The refresh token needs to have been obtained through the Authorization Code flow. + * */ - employment_id: string; + Authorization: string; }; - query?: { + path: { /** - * Version of the emergency_contact_details form schema + * Timeoff ID */ - emergency_contact_details_json_schema_version?: number | 'latest'; + id: string; }; - url: '/v2/employments/{employment_id}/emergency-contact'; + query?: never; + url: '/v1/timeoff/{id}'; }; -export type PutV2EmploymentsEmploymentIdEmergencyContactErrors = { +export type PatchV1TimeoffId2Errors = { /** * Bad Request */ @@ -18756,18 +18650,10 @@ export type PutV2EmploymentsEmploymentIdEmergencyContactErrors = { * Unauthorized */ 401: UnauthorizedResponse; - /** - * Forbidden - */ - 403: ForbiddenResponse; /** * Not Found */ 404: NotFoundResponse; - /** - * Conflict - */ - 409: ConflictResponse; /** * Unprocessable Entity */ @@ -18778,62 +18664,52 @@ export type PutV2EmploymentsEmploymentIdEmergencyContactErrors = { 429: TooManyRequestsResponse; }; -export type PutV2EmploymentsEmploymentIdEmergencyContactError = - PutV2EmploymentsEmploymentIdEmergencyContactErrors[keyof PutV2EmploymentsEmploymentIdEmergencyContactErrors]; +export type PatchV1TimeoffId2Error = + PatchV1TimeoffId2Errors[keyof PatchV1TimeoffId2Errors]; -export type PutV2EmploymentsEmploymentIdEmergencyContactResponses = { +export type PatchV1TimeoffId2Responses = { /** * Success */ - 200: EmploymentDetailsOnlyResponse; + 200: TimeoffResponse; }; -export type PutV2EmploymentsEmploymentIdEmergencyContactResponse = - PutV2EmploymentsEmploymentIdEmergencyContactResponses[keyof PutV2EmploymentsEmploymentIdEmergencyContactResponses]; +export type PatchV1TimeoffId2Response = + PatchV1TimeoffId2Responses[keyof PatchV1TimeoffId2Responses]; -export type GetV1TravelLetterRequestsData = { - body?: never; - path?: never; - query?: { - /** - * Filter results on the given status - */ - status?: - | 'pending' - | 'cancelled' - | 'declined_by_manager' - | 'declined_by_remote' - | 'approved_by_manager' - | 'approved_by_remote'; - /** - * Filter results on the given employment slug - */ - employment_id?: string; - /** - * Filter results on the given employee name - */ - employee_name?: string; - /** - * Sort order - */ - order?: 'asc' | 'desc'; - /** - * Field to sort by - */ - sort_by?: 'submitted_at'; +export type PatchV1TimeoffIdData = { + /** + * UpdateTimeoff + */ + body: UpdateApprovedTimeoffParams; + headers: { /** - * Starts fetching records after the given page + * Requires a Company-scoped access token obtained through the Authorization Code flow or the Refresh Token flow. + * + * The refresh token needs to have been obtained through the Authorization Code flow. + * */ - page?: number; + Authorization: string; + }; + path: { /** - * Number of items per page + * Timeoff ID */ - page_size?: number; + id: string; }; - url: '/v1/travel-letter-requests'; + query?: never; + url: '/v1/timeoff/{id}'; }; -export type GetV1TravelLetterRequestsErrors = { +export type PatchV1TimeoffIdErrors = { + /** + * Bad Request + */ + 400: BadRequestResponse; + /** + * Unauthorized + */ + 401: UnauthorizedResponse; /** * Not Found */ @@ -18842,47 +18718,41 @@ export type GetV1TravelLetterRequestsErrors = { * Unprocessable Entity */ 422: UnprocessableEntityResponse; + /** + * Unprocessable Entity + */ + 429: TooManyRequestsResponse; }; -export type GetV1TravelLetterRequestsError = - GetV1TravelLetterRequestsErrors[keyof GetV1TravelLetterRequestsErrors]; +export type PatchV1TimeoffIdError = + PatchV1TimeoffIdErrors[keyof PatchV1TimeoffIdErrors]; -export type GetV1TravelLetterRequestsResponses = { +export type PatchV1TimeoffIdResponses = { /** * Success */ - 200: ListTravelLettersResponse; + 200: TimeoffResponse; }; -export type GetV1TravelLetterRequestsResponse = - GetV1TravelLetterRequestsResponses[keyof GetV1TravelLetterRequestsResponses]; +export type PatchV1TimeoffIdResponse = + PatchV1TimeoffIdResponses[keyof PatchV1TimeoffIdResponses]; -export type GetV1BenefitRenewalRequestsData = { +export type GetV1IdentityCurrentData = { body?: never; headers: { /** - * Requires a Company-scoped access token obtained through the Authorization Code flow or the Refresh Token flow. - * - * The refresh token needs to have been obtained through the Authorization Code flow. + * This endpoint works with any of the access tokens provided. You can use an access + * token obtained through the Client Credentials flow, the Authorization Code flow, or the Refresh Token flow. * */ Authorization: string; }; path?: never; - query?: { - /** - * Starts fetching records after the given page - */ - page?: number; - /** - * Number of items per page - */ - page_size?: number; - }; - url: '/v1/benefit-renewal-requests'; + query?: never; + url: '/v1/identity/current'; }; -export type GetV1BenefitRenewalRequestsErrors = { +export type GetV1IdentityCurrentErrors = { /** * Bad Request */ @@ -18900,44 +18770,59 @@ export type GetV1BenefitRenewalRequestsErrors = { */ 422: UnprocessableEntityResponse; /** - * Unprocessable Entity + * Too many requests */ 429: TooManyRequestsResponse; }; -export type GetV1BenefitRenewalRequestsError = - GetV1BenefitRenewalRequestsErrors[keyof GetV1BenefitRenewalRequestsErrors]; +export type GetV1IdentityCurrentError = + GetV1IdentityCurrentErrors[keyof GetV1IdentityCurrentErrors]; -export type GetV1BenefitRenewalRequestsResponses = { +export type GetV1IdentityCurrentResponses = { /** * Success */ - 200: BenefitRenewalRequestsListBenefitRenewalRequestResponse; + 201: IdentityCurrentResponse; }; -export type GetV1BenefitRenewalRequestsResponse = - GetV1BenefitRenewalRequestsResponses[keyof GetV1BenefitRenewalRequestsResponses]; +export type GetV1IdentityCurrentResponse = + GetV1IdentityCurrentResponses[keyof GetV1IdentityCurrentResponses]; -export type PostV1WebhookCallbacksData = { - /** - * WebhookCallback - */ - body?: CreateWebhookCallbackParams; - headers: { +export type GetV1WdGphPayVarianceData = { + body?: never; + headers?: { /** - * Requires a Company-scoped access token obtained through the Authorization Code flow or the Refresh Token flow. - * - * The refresh token needs to have been obtained through the Authorization Code flow. - * + * The preferred language of the inquiring user in Workday */ - Authorization: string; + accept_language?: string; }; path?: never; - query?: never; - url: '/v1/webhook-callbacks'; + query: { + /** + * The pay group ID for identifying the pay group at the vendor system + */ + payGroupExternalId: string; + /** + * The run type id provided in the paySummary API + */ + runTypeId: string; + /** + * The cycle type id, defaults to the main run if not provided + */ + cycleTypeId?: string; + /** + * The period end date in question, defaults to current period if not provided + */ + periodEndDate?: Date; + }; + url: '/v1/wd/gph/payVariance'; }; -export type PostV1WebhookCallbacksErrors = { +export type GetV1WdGphPayVarianceErrors = { + /** + * Bad Request + */ + 400: BadRequestResponse; /** * Unauthorized */ @@ -18946,38 +18831,43 @@ export type PostV1WebhookCallbacksErrors = { * Not Found */ 404: NotFoundResponse; - /** - * Unprocessable Entity - */ - 422: UnprocessableEntityResponse; }; -export type PostV1WebhookCallbacksError = - PostV1WebhookCallbacksErrors[keyof PostV1WebhookCallbacksErrors]; +export type GetV1WdGphPayVarianceError = + GetV1WdGphPayVarianceErrors[keyof GetV1WdGphPayVarianceErrors]; -export type PostV1WebhookCallbacksResponses = { +export type GetV1WdGphPayVarianceResponses = { /** * Success */ - 200: WebhookCallbackResponse; + 200: PayVarianceResponse; }; -export type PostV1WebhookCallbacksResponse = - PostV1WebhookCallbacksResponses[keyof PostV1WebhookCallbacksResponses]; +export type GetV1WdGphPayVarianceResponse = + GetV1WdGphPayVarianceResponses[keyof GetV1WdGphPayVarianceResponses]; -export type PostV1TimesheetsTimesheetIdApproveData = { +export type GetV1PayrollCalendarsCycleData = { body?: never; path: { /** - * Timesheet ID + * The cycle for which to list the payroll calendars. Format: YYYY-MM */ - timesheet_id: string; + cycle: string; }; - query?: never; - url: '/v1/timesheets/{timesheet_id}/approve'; + query?: { + /** + * Starts fetching records after the given page + */ + page?: number; + /** + * Number of items per page + */ + page_size?: number; + }; + url: '/v1/payroll-calendars/{cycle}'; }; -export type PostV1TimesheetsTimesheetIdApproveErrors = { +export type GetV1PayrollCalendarsCycleErrors = { /** * Unauthorized */ @@ -18992,32 +18882,82 @@ export type PostV1TimesheetsTimesheetIdApproveErrors = { 422: UnprocessableEntityResponse; }; -export type PostV1TimesheetsTimesheetIdApproveError = - PostV1TimesheetsTimesheetIdApproveErrors[keyof PostV1TimesheetsTimesheetIdApproveErrors]; +export type GetV1PayrollCalendarsCycleError = + GetV1PayrollCalendarsCycleErrors[keyof GetV1PayrollCalendarsCycleErrors]; -export type PostV1TimesheetsTimesheetIdApproveResponses = { +export type GetV1PayrollCalendarsCycleResponses = { /** * Success */ - 200: MinimalTimesheetResponse; + 200: PayrollCalendarsResponse; }; -export type PostV1TimesheetsTimesheetIdApproveResponse = - PostV1TimesheetsTimesheetIdApproveResponses[keyof PostV1TimesheetsTimesheetIdApproveResponses]; +export type GetV1PayrollCalendarsCycleResponse = + GetV1PayrollCalendarsCycleResponses[keyof GetV1PayrollCalendarsCycleResponses]; -export type GetV1LeavePoliciesSummaryEmploymentIdData = { - body?: never; +export type PostV1ContractorsEmploymentsEmploymentIdTerminateCorEmploymentData = + { + body?: never; + path: { + /** + * Employment ID + */ + employment_id: string; + }; + query?: never; + url: '/v1/contractors/employments/{employment_id}/terminate-cor-employment'; + }; + +export type PostV1ContractorsEmploymentsEmploymentIdTerminateCorEmploymentErrors = + { + /** + * Bad Request + */ + 400: BadRequestResponse; + /** + * Forbidden + */ + 403: ForbiddenResponse; + /** + * Not Found + */ + 404: NotFoundResponse; + /** + * Unprocessable Entity + */ + 422: UnprocessableEntityResponse; + }; + +export type PostV1ContractorsEmploymentsEmploymentIdTerminateCorEmploymentError = + PostV1ContractorsEmploymentsEmploymentIdTerminateCorEmploymentErrors[keyof PostV1ContractorsEmploymentsEmploymentIdTerminateCorEmploymentErrors]; + +export type PostV1ContractorsEmploymentsEmploymentIdTerminateCorEmploymentResponses = + { + /** + * Success + */ + 200: SuccessResponse; + }; + +export type PostV1ContractorsEmploymentsEmploymentIdTerminateCorEmploymentResponse = + PostV1ContractorsEmploymentsEmploymentIdTerminateCorEmploymentResponses[keyof PostV1ContractorsEmploymentsEmploymentIdTerminateCorEmploymentResponses]; + +export type PostV1TimesheetsTimesheetIdSendBackData = { + /** + * SendBackTimesheetParams + */ + body?: SendBackTimesheetParams; path: { /** - * Employment ID + * Timesheet ID */ - employment_id: string; + timesheet_id: string; }; query?: never; - url: '/v1/leave-policies/summary/{employment_id}'; + url: '/v1/timesheets/{timesheet_id}/send-back'; }; -export type GetV1LeavePoliciesSummaryEmploymentIdErrors = { +export type PostV1TimesheetsTimesheetIdSendBackErrors = { /** * Unauthorized */ @@ -19032,167 +18972,103 @@ export type GetV1LeavePoliciesSummaryEmploymentIdErrors = { 422: UnprocessableEntityResponse; }; -export type GetV1LeavePoliciesSummaryEmploymentIdError = - GetV1LeavePoliciesSummaryEmploymentIdErrors[keyof GetV1LeavePoliciesSummaryEmploymentIdErrors]; +export type PostV1TimesheetsTimesheetIdSendBackError = + PostV1TimesheetsTimesheetIdSendBackErrors[keyof PostV1TimesheetsTimesheetIdSendBackErrors]; -export type GetV1LeavePoliciesSummaryEmploymentIdResponses = { +export type PostV1TimesheetsTimesheetIdSendBackResponses = { /** * Success */ - 200: ListLeavePoliciesSummaryResponse; + 200: SentBackTimesheetResponse; }; -export type GetV1LeavePoliciesSummaryEmploymentIdResponse = - GetV1LeavePoliciesSummaryEmploymentIdResponses[keyof GetV1LeavePoliciesSummaryEmploymentIdResponses]; +export type PostV1TimesheetsTimesheetIdSendBackResponse = + PostV1TimesheetsTimesheetIdSendBackResponses[keyof PostV1TimesheetsTimesheetIdSendBackResponses]; -export type GetV1EmployeeExpenseCategoriesData = { - body?: never; - path?: never; - query?: { - /** - * Include parent (non-selectable) categories in addition to selectable leaves - */ - include_parents?: boolean; +export type PostV1OnboardingEmploymentsEmploymentIdPreOnboardingDocumentsIdSignData = + { /** - * Expense ID (slug) whose category should be included in the result, even if it is not selectable by default + * SignContractDocument */ - expense_id?: string; + body: SignContractDocument; + path: { + /** + * Employment ID + */ + employment_id: string; + /** + * Pre-onboarding document ID + */ + id: string; + }; + query?: never; + url: '/v1/onboarding/employments/{employment_id}/pre-onboarding-documents/{id}/sign'; }; - url: '/v1/employee/expense-categories'; -}; - -export type GetV1EmployeeExpenseCategoriesErrors = { - /** - * Unauthorized - */ - 401: UnauthorizedResponse; - /** - * Forbidden - */ - 403: ForbiddenResponse; - /** - * Not Found - */ - 404: NotFoundResponse; -}; - -export type GetV1EmployeeExpenseCategoriesError = - GetV1EmployeeExpenseCategoriesErrors[keyof GetV1EmployeeExpenseCategoriesErrors]; - -export type GetV1EmployeeExpenseCategoriesResponses = { - /** - * Success - */ - 200: ListExpenseCategoriesResponse; -}; - -export type GetV1EmployeeExpenseCategoriesResponse = - GetV1EmployeeExpenseCategoriesResponses[keyof GetV1EmployeeExpenseCategoriesResponses]; -export type GetV1CompanyDepartmentsData = { - body?: never; - path?: never; - query: { +export type PostV1OnboardingEmploymentsEmploymentIdPreOnboardingDocumentsIdSignErrors = + { /** - * Company ID + * Bad Request */ - company_id: string; + 400: BadRequestResponse; /** - * Paginate option. Default: true. When true, paginates response; otherwise, does not. + * Unauthorized */ - paginate?: boolean; + 401: UnauthorizedResponse; /** - * Starts fetching records after the given page + * Forbidden */ - page?: number; + 403: ForbiddenResponse; /** - * Number of items per page + * Not Found */ - page_size?: number; + 404: NotFoundResponse; + /** + * Unprocessable Entity + */ + 422: UnprocessableEntityResponse; }; - url: '/v1/company-departments'; -}; - -export type GetV1CompanyDepartmentsErrors = { - /** - * Not Found - */ - 404: NotFoundResponse; - /** - * Unprocessable Entity - */ - 422: UnprocessableEntityResponse; -}; - -export type GetV1CompanyDepartmentsError = - GetV1CompanyDepartmentsErrors[keyof GetV1CompanyDepartmentsErrors]; - -export type GetV1CompanyDepartmentsResponses = { - /** - * Success - */ - 200: ListCompanyDepartmentsPaginatedResponse; -}; - -export type GetV1CompanyDepartmentsResponse = - GetV1CompanyDepartmentsResponses[keyof GetV1CompanyDepartmentsResponses]; - -export type PostV1CompanyDepartmentsData = { - /** - * Create Company Department request params - */ - body: CreateCompanyDepartmentParams; - path?: never; - query?: never; - url: '/v1/company-departments'; -}; - -export type PostV1CompanyDepartmentsErrors = { - /** - * Not Found - */ - 404: NotFoundResponse; - /** - * Unprocessable Entity - */ - 422: UnprocessableEntityResponse; -}; -export type PostV1CompanyDepartmentsError = - PostV1CompanyDepartmentsErrors[keyof PostV1CompanyDepartmentsErrors]; +export type PostV1OnboardingEmploymentsEmploymentIdPreOnboardingDocumentsIdSignError = + PostV1OnboardingEmploymentsEmploymentIdPreOnboardingDocumentsIdSignErrors[keyof PostV1OnboardingEmploymentsEmploymentIdPreOnboardingDocumentsIdSignErrors]; -export type PostV1CompanyDepartmentsResponses = { - /** - * Created - */ - 201: CompanyDepartmentCreatedResponse; -}; +export type PostV1OnboardingEmploymentsEmploymentIdPreOnboardingDocumentsIdSignResponses = + { + /** + * Success + */ + 200: SuccessResponse; + }; -export type PostV1CompanyDepartmentsResponse = - PostV1CompanyDepartmentsResponses[keyof PostV1CompanyDepartmentsResponses]; +export type PostV1OnboardingEmploymentsEmploymentIdPreOnboardingDocumentsIdSignResponse = + PostV1OnboardingEmploymentsEmploymentIdPreOnboardingDocumentsIdSignResponses[keyof PostV1OnboardingEmploymentsEmploymentIdPreOnboardingDocumentsIdSignResponses]; -export type GetV1OffboardingsEmploymentsEmploymentIdData = { +export type GetV1BenefitRenewalRequestsData = { body?: never; - path: { + headers: { /** - * Employment ID + * Requires a Company-scoped access token obtained through the Authorization Code flow or the Refresh Token flow. + * + * The refresh token needs to have been obtained through the Authorization Code flow. + * */ - employment_id: string; + Authorization: string; }; + path?: never; query?: { /** * Starts fetching records after the given page */ page?: number; /** - * Change the amount of records returned per page, defaults to 20, limited to 100 + * Number of items per page */ page_size?: number; }; - url: '/v1/offboardings/employments/{employment_id}'; + url: '/v1/benefit-renewal-requests'; }; -export type GetV1OffboardingsEmploymentsEmploymentIdErrors = { +export type GetV1BenefitRenewalRequestsErrors = { /** * Bad Request */ @@ -19210,144 +19086,226 @@ export type GetV1OffboardingsEmploymentsEmploymentIdErrors = { */ 422: UnprocessableEntityResponse; /** - * Too many requests + * Unprocessable Entity */ 429: TooManyRequestsResponse; }; -export type GetV1OffboardingsEmploymentsEmploymentIdError = - GetV1OffboardingsEmploymentsEmploymentIdErrors[keyof GetV1OffboardingsEmploymentsEmploymentIdErrors]; +export type GetV1BenefitRenewalRequestsError = + GetV1BenefitRenewalRequestsErrors[keyof GetV1BenefitRenewalRequestsErrors]; -export type GetV1OffboardingsEmploymentsEmploymentIdResponses = { +export type GetV1BenefitRenewalRequestsResponses = { /** * Success */ - 200: ListOffboardingResponse; + 200: BenefitRenewalRequestsListBenefitRenewalRequestResponse; }; -export type GetV1OffboardingsEmploymentsEmploymentIdResponse = - GetV1OffboardingsEmploymentsEmploymentIdResponses[keyof GetV1OffboardingsEmploymentsEmploymentIdResponses]; +export type GetV1BenefitRenewalRequestsResponse = + GetV1BenefitRenewalRequestsResponses[keyof GetV1BenefitRenewalRequestsResponses]; -export type PostV1TimeoffTimeoffIdCancelRequestDeclineData = { - /** - * Timeoff - */ - body: DeclineTimeoffParams; - path: { +export type PutV1SandboxCompaniesCompanyIdDefaultLegalEntityLegalEntityIdData = + { + body?: never; + headers: { + /** + * Requires a Company-scoped access token obtained through the Authorization Code flow or the Refresh Token flow. + * + * The refresh token needs to have been obtained through the Authorization Code flow. + * + */ + Authorization: string; + }; + path: { + /** + * Company ID + */ + company_id: string; + /** + * Legal Entity ID to set as the new default + */ + legal_entity_id: string; + }; + query?: never; + url: '/v1/sandbox/companies/{company_id}/default-legal-entity/{legal_entity_id}'; + }; + +export type PutV1SandboxCompaniesCompanyIdDefaultLegalEntityLegalEntityIdErrors = + { /** - * Time Off ID + * Bad Request */ - timeoff_id: string; + 400: BadRequestResponse; + /** + * Unauthorized + */ + 401: UnauthorizedResponse; + /** + * Not Found + */ + 404: NotFoundResponse; + /** + * Unprocessable Entity + */ + 422: UnprocessableEntityResponse; + /** + * Too many requests + */ + 429: TooManyRequestsResponse; }; - query?: never; - url: '/v1/timeoff/{timeoff_id}/cancel-request/decline'; -}; -export type PostV1TimeoffTimeoffIdCancelRequestDeclineErrors = { - /** - * Unauthorized - */ - 401: UnauthorizedResponse; - /** - * Conflict - */ - 409: ConflictResponse; - /** - * Unprocessable Entity - */ - 422: UnprocessableEntityResponse; - /** - * Unprocessable Entity - */ - 429: TooManyRequestsResponse; -}; - -export type PostV1TimeoffTimeoffIdCancelRequestDeclineError = - PostV1TimeoffTimeoffIdCancelRequestDeclineErrors[keyof PostV1TimeoffTimeoffIdCancelRequestDeclineErrors]; +export type PutV1SandboxCompaniesCompanyIdDefaultLegalEntityLegalEntityIdError = + PutV1SandboxCompaniesCompanyIdDefaultLegalEntityLegalEntityIdErrors[keyof PutV1SandboxCompaniesCompanyIdDefaultLegalEntityLegalEntityIdErrors]; -export type PostV1TimeoffTimeoffIdCancelRequestDeclineResponses = { - /** - * Success - */ - 200: SuccessResponse; -}; +export type PutV1SandboxCompaniesCompanyIdDefaultLegalEntityLegalEntityIdResponses = + { + /** + * Success + */ + 200: SuccessResponse; + }; -export type PostV1TimeoffTimeoffIdCancelRequestDeclineResponse = - PostV1TimeoffTimeoffIdCancelRequestDeclineResponses[keyof PostV1TimeoffTimeoffIdCancelRequestDeclineResponses]; +export type PutV1SandboxCompaniesCompanyIdDefaultLegalEntityLegalEntityIdResponse = + PutV1SandboxCompaniesCompanyIdDefaultLegalEntityLegalEntityIdResponses[keyof PutV1SandboxCompaniesCompanyIdDefaultLegalEntityLegalEntityIdResponses]; -export type PutV1EmploymentsEmploymentIdBasicInformationData = { - /** - * Employment basic information params - */ - body?: EmploymentBasicInformationParams; - path: { +export type GetV1EmploymentContractsData = { + body?: never; + headers: { + /** + * Requires a Company-scoped access token obtained through the Authorization Code flow or the Refresh Token flow. + * + * The refresh token needs to have been obtained through the Authorization Code flow. + * + */ + Authorization: string; + }; + path?: never; + query: { /** * Employment ID */ employment_id: string; + /** + * Only Active + */ + only_active?: boolean; }; - query?: never; - url: '/v1/employments/{employment_id}/basic-information'; + url: '/v1/employment-contracts'; }; -export type PutV1EmploymentsEmploymentIdBasicInformationErrors = { +export type GetV1EmploymentContractsErrors = { /** - * Bad Request + * Unauthorized */ - 400: BadRequestResponse; + 401: UnauthorizedResponse; /** * Forbidden */ 403: ForbiddenResponse; /** - * Conflict + * Not Found */ - 409: ConflictResponse; + 404: NotFoundResponse; /** * Unprocessable Entity */ 422: UnprocessableEntityResponse; - /** - * Unprocessable Entity - */ - 429: TooManyRequestsResponse; }; -export type PutV1EmploymentsEmploymentIdBasicInformationError = - PutV1EmploymentsEmploymentIdBasicInformationErrors[keyof PutV1EmploymentsEmploymentIdBasicInformationErrors]; +export type GetV1EmploymentContractsError = + GetV1EmploymentContractsErrors[keyof GetV1EmploymentContractsErrors]; -export type PutV1EmploymentsEmploymentIdBasicInformationResponses = { +export type GetV1EmploymentContractsResponses = { /** * Success */ - 200: EmploymentResponse; + 200: ListEmploymentContractResponse; }; -export type PutV1EmploymentsEmploymentIdBasicInformationResponse = - PutV1EmploymentsEmploymentIdBasicInformationResponses[keyof PutV1EmploymentsEmploymentIdBasicInformationResponses]; +export type GetV1EmploymentContractsResponse = + GetV1EmploymentContractsResponses[keyof GetV1EmploymentContractsResponses]; -export type GetV1EmploymentsEmploymentIdBenefitOffersSchemaData = { +export type PutV1SandboxContractAmendmentsContractAmendmentRequestIdCancelData = + { + body?: never; + path: { + /** + * Contract amendment request ID + */ + contract_amendment_request_id: string; + }; + query?: never; + url: '/v1/sandbox/contract-amendments/{contract_amendment_request_id}/cancel'; + }; + +export type PutV1SandboxContractAmendmentsContractAmendmentRequestIdCancelErrors = + { + /** + * Bad Request + */ + 400: BadRequestResponse; + /** + * Unauthorized + */ + 401: UnauthorizedResponse; + /** + * Not Found + */ + 404: NotFoundResponse; + /** + * Unprocessable Entity + */ + 422: UnprocessableEntityResponse; + /** + * Too many requests + */ + 429: TooManyRequestsResponse; + }; + +export type PutV1SandboxContractAmendmentsContractAmendmentRequestIdCancelError = + PutV1SandboxContractAmendmentsContractAmendmentRequestIdCancelErrors[keyof PutV1SandboxContractAmendmentsContractAmendmentRequestIdCancelErrors]; + +export type PutV1SandboxContractAmendmentsContractAmendmentRequestIdCancelResponses = + { + /** + * Success + */ + 200: SuccessResponse; + }; + +export type PutV1SandboxContractAmendmentsContractAmendmentRequestIdCancelResponse = + PutV1SandboxContractAmendmentsContractAmendmentRequestIdCancelResponses[keyof PutV1SandboxContractAmendmentsContractAmendmentRequestIdCancelResponses]; + +export type GetV1PayslipsPayslipIdPdfData = { body?: never; - path: { + headers: { /** - * Unique identifier of the employment + * Requires a Company-scoped access token obtained through the Authorization Code flow or the Refresh Token flow. + * + * The refresh token needs to have been obtained through the Authorization Code flow. + * */ - employment_id: UuidSlug; + Authorization: string; }; - query?: { + path: { /** - * Version of the form schema + * Payslip ID */ - json_schema_version?: number | 'latest'; + payslip_id: string; }; - url: '/v1/employments/{employment_id}/benefit-offers/schema'; + query?: never; + url: '/v1/payslips/{payslip_id}/pdf'; }; -export type GetV1EmploymentsEmploymentIdBenefitOffersSchemaErrors = { +export type GetV1PayslipsPayslipIdPdfErrors = { /** - * Forbidden + * Bad Request */ - 403: ForbiddenResponse; + 400: BadRequestResponse; + /** + * Unauthorized + */ + 401: UnauthorizedResponse; /** * Not Found */ @@ -19356,132 +19314,222 @@ export type GetV1EmploymentsEmploymentIdBenefitOffersSchemaErrors = { * Unprocessable Entity */ 422: UnprocessableEntityResponse; + /** + * Too many requests + */ + 429: TooManyRequestsResponse; }; -export type GetV1EmploymentsEmploymentIdBenefitOffersSchemaError = - GetV1EmploymentsEmploymentIdBenefitOffersSchemaErrors[keyof GetV1EmploymentsEmploymentIdBenefitOffersSchemaErrors]; +export type GetV1PayslipsPayslipIdPdfError = + GetV1PayslipsPayslipIdPdfErrors[keyof GetV1PayslipsPayslipIdPdfErrors]; -export type GetV1EmploymentsEmploymentIdBenefitOffersSchemaResponses = { +export type GetV1PayslipsPayslipIdPdfResponses = { /** * Success */ - 200: UnifiedEmploymentsBenefitOffersJsonSchemaResponse; + 200: PayslipDownloadResponse; }; -export type GetV1EmploymentsEmploymentIdBenefitOffersSchemaResponse = - GetV1EmploymentsEmploymentIdBenefitOffersSchemaResponses[keyof GetV1EmploymentsEmploymentIdBenefitOffersSchemaResponses]; +export type GetV1PayslipsPayslipIdPdfResponse = + GetV1PayslipsPayslipIdPdfResponses[keyof GetV1PayslipsPayslipIdPdfResponses]; -export type PostV1ContractorsEligibilityQuestionnaireData = { +export type PostV1TimeoffTimeoffIdApproveData = { /** - * Eligibility questionnaire submission + * ApproveTimeoff */ - body: SubmitEligibilityQuestionnaireRequest; - path?: never; - query?: { + body: ApproveTimeoffParams; + path: { /** - * Version of the form schema + * Time Off ID */ - json_schema_version?: number | 'latest'; + timeoff_id: string; }; - url: '/v1/contractors/eligibility-questionnaire'; + query?: never; + url: '/v1/timeoff/{timeoff_id}/approve'; }; -export type PostV1ContractorsEligibilityQuestionnaireErrors = { +export type PostV1TimeoffTimeoffIdApproveErrors = { + /** + * Bad Request + */ + 400: BadRequestResponse; /** * Unauthorized */ 401: UnauthorizedResponse; /** - * Forbidden + * Not Found */ - 403: ForbiddenResponse; + 404: NotFoundResponse; /** - * Conflict + * Unprocessable Entity */ - 409: ConflictErrorResponse; + 422: UnprocessableEntityResponse; /** * Unprocessable Entity */ - 422: UnprocessableEntityResponse; + 429: TooManyRequestsResponse; }; -export type PostV1ContractorsEligibilityQuestionnaireError = - PostV1ContractorsEligibilityQuestionnaireErrors[keyof PostV1ContractorsEligibilityQuestionnaireErrors]; +export type PostV1TimeoffTimeoffIdApproveError = + PostV1TimeoffTimeoffIdApproveErrors[keyof PostV1TimeoffTimeoffIdApproveErrors]; -export type PostV1ContractorsEligibilityQuestionnaireResponses = { +export type PostV1TimeoffTimeoffIdApproveResponses = { /** - * Questionnaire submitted successfully + * Success */ - 201: EligibilityQuestionnaireResponse; + 200: TimeoffResponse; }; -export type PostV1ContractorsEligibilityQuestionnaireResponse = - PostV1ContractorsEligibilityQuestionnaireResponses[keyof PostV1ContractorsEligibilityQuestionnaireResponses]; +export type PostV1TimeoffTimeoffIdApproveResponse = + PostV1TimeoffTimeoffIdApproveResponses[keyof PostV1TimeoffTimeoffIdApproveResponses]; -export type GetV1EmployeePersonalInformationData = { +export type GetV1CompaniesData = { body?: never; + headers: { + /** + * Requires a client credentials access token obtained through the Client Credentials flow or the Refresh Token flow. + * + * The refresh token needs to have been obtained through the Client Credentials flow. + * + */ + Authorization: string; + }; path?: never; - query?: never; - url: '/v1/employee/personal-information'; + query?: { + /** + * External ID + */ + external_id?: string; + }; + url: '/v1/companies'; }; -export type GetV1EmployeePersonalInformationErrors = { +export type GetV1CompaniesErrors = { /** * Unauthorized */ 401: UnauthorizedResponse; - /** - * Forbidden - */ - 403: ForbiddenResponse; /** * Not Found */ 404: NotFoundResponse; + /** + * Unprocessable Entity + */ + 422: UnprocessableEntityResponse; }; -export type GetV1EmployeePersonalInformationError = - GetV1EmployeePersonalInformationErrors[keyof GetV1EmployeePersonalInformationErrors]; +export type GetV1CompaniesError = + GetV1CompaniesErrors[keyof GetV1CompaniesErrors]; -export type GetV1EmployeePersonalInformationResponses = { +export type GetV1CompaniesResponses = { /** * Success */ - 200: SuccessResponse; + 200: CompaniesResponse; }; -export type GetV1EmployeePersonalInformationResponse = - GetV1EmployeePersonalInformationResponses[keyof GetV1EmployeePersonalInformationResponses]; +export type GetV1CompaniesResponse = + GetV1CompaniesResponses[keyof GetV1CompaniesResponses]; -export type GetV1TimesheetsData = { - body?: never; +export type PostV1CompaniesData = { + /** + * Create Company params + */ + body?: CreateCompanyParams; + headers: { + /** + * Requires a client credentials access token obtained through the Client Credentials flow or the Refresh Token flow. + * + * The refresh token needs to have been obtained through the Client Credentials flow. + * + */ + Authorization: string; + }; path?: never; query?: { /** - * Filter timesheets by their status + * Version of the address_details form schema */ - status?: TimesheetStatus; + address_details_json_schema_version?: number | 'latest'; /** - * Sort order + * Version of the bank_account_details form schema */ - order?: 'asc' | 'desc'; + bank_account_details_json_schema_version?: number | 'latest'; /** - * Field to sort by + * Complementary action(s) to perform when creating a company: + * + * - `get_oauth_access_tokens` returns the user's access and refresh tokens + * - `send_create_password_email ` sends a reset password token to the company owner's email so they can log in using Remote UI (not needed if integration plans to use SSO only) + * + * If `action` contains `send_create_password_email` you can redirect the user to [https://employ.remote.com/api-integration-new-password-send](https://employ.remote.com/api-integration-new-password-send) + * */ - sort_by?: 'submitted_at'; + action?: string; /** - * Starts fetching records after the given page + * Whether the request should be performed async + * */ - page?: number; + async?: boolean; /** - * Number of items per page + * Scope of the access token + * */ - page_size?: number; + scope?: string; }; - url: '/v1/timesheets'; + url: '/v1/companies'; }; -export type GetV1TimesheetsErrors = { +export type PostV1CompaniesErrors = { + /** + * Bad Request + */ + 400: BadRequestResponse; + /** + * Forbidden + */ + 403: ForbiddenResponse; + /** + * Conflict + */ + 409: CompanyCreationConflictErrorResponse; + /** + * Unprocessable Entity + */ + 422: UnprocessableEntityResponse; + /** + * Unprocessable Entity + */ + 429: TooManyRequestsResponse; +}; + +export type PostV1CompaniesError = + PostV1CompaniesErrors[keyof PostV1CompaniesErrors]; + +export type PostV1CompaniesResponses = { + /** + * Created + */ + 201: CompanyCreationResponse; +}; + +export type PostV1CompaniesResponse = + PostV1CompaniesResponses[keyof PostV1CompaniesResponses]; + +export type GetV1EmploymentsEmploymentIdCompanyStructureNodesData = { + body?: never; + path: { + /** + * Employment ID + */ + employment_id: string; + }; + query?: never; + url: '/v1/employments/{employment_id}/company-structure-nodes'; +}; + +export type GetV1EmploymentsEmploymentIdCompanyStructureNodesErrors = { /** * Unauthorized */ @@ -19496,126 +19544,86 @@ export type GetV1TimesheetsErrors = { 422: UnprocessableEntityResponse; }; -export type GetV1TimesheetsError = - GetV1TimesheetsErrors[keyof GetV1TimesheetsErrors]; +export type GetV1EmploymentsEmploymentIdCompanyStructureNodesError = + GetV1EmploymentsEmploymentIdCompanyStructureNodesErrors[keyof GetV1EmploymentsEmploymentIdCompanyStructureNodesErrors]; -export type GetV1TimesheetsResponses = { +export type GetV1EmploymentsEmploymentIdCompanyStructureNodesResponses = { /** * Success */ - 200: ListTimesheetsResponse; + 200: CompanyStructureNodesResponse; }; -export type GetV1TimesheetsResponse = - GetV1TimesheetsResponses[keyof GetV1TimesheetsResponses]; +export type GetV1EmploymentsEmploymentIdCompanyStructureNodesResponse = + GetV1EmploymentsEmploymentIdCompanyStructureNodesResponses[keyof GetV1EmploymentsEmploymentIdCompanyStructureNodesResponses]; -export type PostV1SandboxCompaniesCompanyIdLegalEntitiesData = { +export type PatchV2EmploymentsEmploymentId2Data = { /** - * Create legal entity params + * Employment params */ - body?: { - /** - * ISO 3166-1 alpha-3 country code - */ - country_code: string; - }; - headers: { - /** - * Requires a Company-scoped access token obtained through the Authorization Code flow or the Refresh Token flow. - * - * The refresh token needs to have been obtained through the Authorization Code flow. - * - */ - Authorization: string; - }; + body?: EmploymentV2UpdateParams; path: { /** - * Company ID + * Employment ID */ - company_id: string; + employment_id: string; }; query?: never; - url: '/v1/sandbox/companies/{company_id}/legal-entities'; + url: '/v2/employments/{employment_id}'; }; -export type PostV1SandboxCompaniesCompanyIdLegalEntitiesErrors = { +export type PatchV2EmploymentsEmploymentId2Errors = { /** * Bad Request */ 400: BadRequestResponse; /** - * Unauthorized + * Forbidden */ - 401: UnauthorizedResponse; + 403: ForbiddenResponse; /** - * Not Found + * Conflict */ - 404: NotFoundResponse; + 409: ConflictResponse; /** * Unprocessable Entity */ 422: UnprocessableEntityResponse; /** - * Too many requests + * Unprocessable Entity */ 429: TooManyRequestsResponse; }; -export type PostV1SandboxCompaniesCompanyIdLegalEntitiesError = - PostV1SandboxCompaniesCompanyIdLegalEntitiesErrors[keyof PostV1SandboxCompaniesCompanyIdLegalEntitiesErrors]; +export type PatchV2EmploymentsEmploymentId2Error = + PatchV2EmploymentsEmploymentId2Errors[keyof PatchV2EmploymentsEmploymentId2Errors]; -export type PostV1SandboxCompaniesCompanyIdLegalEntitiesResponses = { +export type PatchV2EmploymentsEmploymentId2Responses = { /** - * Legal entity created + * Success */ - 201: { - data?: { - /** - * Legal entity slug - */ - legal_entity_id?: string; - /** - * Legal entity name - */ - name?: string; - /** - * Legal entity status - */ - status?: string; - }; - }; + 200: EmploymentResponse; }; -export type PostV1SandboxCompaniesCompanyIdLegalEntitiesResponse = - PostV1SandboxCompaniesCompanyIdLegalEntitiesResponses[keyof PostV1SandboxCompaniesCompanyIdLegalEntitiesResponses]; +export type PatchV2EmploymentsEmploymentId2Response = + PatchV2EmploymentsEmploymentId2Responses[keyof PatchV2EmploymentsEmploymentId2Responses]; -export type GetV1EmploymentsEmploymentIdData = { - body?: never; - headers: { - /** - * Requires a Company-scoped access token obtained through the Authorization Code flow or the Refresh Token flow. - * - * The refresh token needs to have been obtained through the Authorization Code flow. - * - */ - Authorization: string; - }; +export type PatchV2EmploymentsEmploymentIdData = { + /** + * Employment params + */ + body?: EmploymentV2UpdateParams; path: { /** * Employment ID */ employment_id: string; }; - query?: { - /** - * Wether files should be excluded - */ - exclude_files?: boolean; - }; - url: '/v1/employments/{employment_id}'; + query?: never; + url: '/v2/employments/{employment_id}'; }; -export type GetV1EmploymentsEmploymentIdErrors = { +export type PatchV2EmploymentsEmploymentIdErrors = { /** * Bad Request */ @@ -19638,303 +19646,150 @@ export type GetV1EmploymentsEmploymentIdErrors = { 429: TooManyRequestsResponse; }; -export type GetV1EmploymentsEmploymentIdError = - GetV1EmploymentsEmploymentIdErrors[keyof GetV1EmploymentsEmploymentIdErrors]; +export type PatchV2EmploymentsEmploymentIdError = + PatchV2EmploymentsEmploymentIdErrors[keyof PatchV2EmploymentsEmploymentIdErrors]; -export type GetV1EmploymentsEmploymentIdResponses = { +export type PatchV2EmploymentsEmploymentIdResponses = { /** * Success */ - 200: EmploymentShowResponse; + 200: EmploymentResponse; }; -export type GetV1EmploymentsEmploymentIdResponse = - GetV1EmploymentsEmploymentIdResponses[keyof GetV1EmploymentsEmploymentIdResponses]; +export type PatchV2EmploymentsEmploymentIdResponse = + PatchV2EmploymentsEmploymentIdResponses[keyof PatchV2EmploymentsEmploymentIdResponses]; -export type PatchV1EmploymentsEmploymentId2Data = { +export type PostV1ProbationCompletionLetterData = { /** - * Employment params + * Work Authorization Request */ - body?: EmploymentFullParams; - headers: { - /** - * Requires a Company-scoped access token obtained through the Authorization Code flow or the Refresh Token flow. - * - * The refresh token needs to have been obtained through the Authorization Code flow. - * - */ - Authorization: string; - }; - path: { - /** - * Employment ID - */ - employment_id: string; - }; - query?: { - /** - * Version of the address_details form schema - */ - address_details_json_schema_version?: number | 'latest'; - /** - * Version of the administrative_details form schema - */ - administrative_details_json_schema_version?: number | 'latest'; - /** - * Version of the bank_account_details form schema - */ - bank_account_details_json_schema_version?: number | 'latest'; - /** - * Version of the employment_basic_information form schema - */ - employment_basic_information_json_schema_version?: number | 'latest'; - /** - * Version of the billing_address_details form schema - */ - billing_address_details_json_schema_version?: number | 'latest'; - /** - * Version of the contract_details form schema - */ - contract_details_json_schema_version?: number | 'latest'; - /** - * Version of the emergency_contact_details form schema - */ - emergency_contact_details_json_schema_version?: number | 'latest'; - /** - * Version of the personal_details form schema - */ - personal_details_json_schema_version?: number | 'latest'; - /** - * Version of the pricing_plan_details form schema - */ - pricing_plan_details_json_schema_version?: number | 'latest'; - /** - * Skips the dynamic benefits part of the schema if set. To be used when benefits are set via its own API. - */ - skip_benefits?: boolean; - /** - * Complementary action(s) to perform when creating an employment. - */ - actions?: string; - }; - url: '/v1/employments/{employment_id}'; + body: CreateProbationCompletionLetterParams; + path?: never; + query?: never; + url: '/v1/probation-completion-letter'; }; -export type PatchV1EmploymentsEmploymentId2Errors = { - /** - * Bad Request - */ - 400: BadRequestResponse; +export type PostV1ProbationCompletionLetterErrors = { /** - * Forbidden + * Unauthorized */ - 403: ForbiddenResponse; + 401: UnauthorizedResponse; /** - * Conflict + * Not Found */ - 409: ConflictResponse; + 404: NotFoundResponse; /** * Unprocessable Entity */ 422: UnprocessableEntityResponse; - /** - * Unprocessable Entity - */ - 429: TooManyRequestsResponse; }; -export type PatchV1EmploymentsEmploymentId2Error = - PatchV1EmploymentsEmploymentId2Errors[keyof PatchV1EmploymentsEmploymentId2Errors]; +export type PostV1ProbationCompletionLetterError = + PostV1ProbationCompletionLetterErrors[keyof PostV1ProbationCompletionLetterErrors]; -export type PatchV1EmploymentsEmploymentId2Responses = { +export type PostV1ProbationCompletionLetterResponses = { /** * Success */ - 200: EmploymentResponse; + 200: ProbationCompletionLetterResponse; }; -export type PatchV1EmploymentsEmploymentId2Response = - PatchV1EmploymentsEmploymentId2Responses[keyof PatchV1EmploymentsEmploymentId2Responses]; +export type PostV1ProbationCompletionLetterResponse = + PostV1ProbationCompletionLetterResponses[keyof PostV1ProbationCompletionLetterResponses]; -export type PatchV1EmploymentsEmploymentIdData = { +export type PostV1CostCalculatorEstimationPdfData = { /** - * Employment params + * Estimate params */ - body?: EmploymentFullParams; - headers: { - /** - * Requires a Company-scoped access token obtained through the Authorization Code flow or the Refresh Token flow. - * - * The refresh token needs to have been obtained through the Authorization Code flow. - * - */ - Authorization: string; - }; - path: { - /** - * Employment ID - */ - employment_id: string; - }; - query?: { - /** - * Version of the address_details form schema - */ - address_details_json_schema_version?: number | 'latest'; - /** - * Version of the administrative_details form schema - */ - administrative_details_json_schema_version?: number | 'latest'; - /** - * Version of the bank_account_details form schema - */ - bank_account_details_json_schema_version?: number | 'latest'; - /** - * Version of the employment_basic_information form schema - */ - employment_basic_information_json_schema_version?: number | 'latest'; - /** - * Version of the billing_address_details form schema - */ - billing_address_details_json_schema_version?: number | 'latest'; - /** - * Version of the contract_details form schema - */ - contract_details_json_schema_version?: number | 'latest'; - /** - * Version of the emergency_contact_details form schema - */ - emergency_contact_details_json_schema_version?: number | 'latest'; - /** - * Version of the personal_details form schema - */ - personal_details_json_schema_version?: number | 'latest'; - /** - * Version of the pricing_plan_details form schema - */ - pricing_plan_details_json_schema_version?: number | 'latest'; - /** - * Skips the dynamic benefits part of the schema if set. To be used when benefits are set via its own API. - */ - skip_benefits?: boolean; - /** - * Complementary action(s) to perform when creating an employment. - */ - actions?: string; - }; - url: '/v1/employments/{employment_id}'; + body?: CostCalculatorEstimateParams; + path?: never; + query?: never; + url: '/v1/cost-calculator/estimation-pdf'; }; -export type PatchV1EmploymentsEmploymentIdErrors = { - /** - * Bad Request - */ - 400: BadRequestResponse; - /** - * Forbidden - */ - 403: ForbiddenResponse; +export type PostV1CostCalculatorEstimationPdfErrors = { /** - * Conflict + * Not Found */ - 409: ConflictResponse; + 404: NotFoundResponse; /** * Unprocessable Entity */ 422: UnprocessableEntityResponse; - /** - * Unprocessable Entity - */ - 429: TooManyRequestsResponse; }; -export type PatchV1EmploymentsEmploymentIdError = - PatchV1EmploymentsEmploymentIdErrors[keyof PatchV1EmploymentsEmploymentIdErrors]; +export type PostV1CostCalculatorEstimationPdfError = + PostV1CostCalculatorEstimationPdfErrors[keyof PostV1CostCalculatorEstimationPdfErrors]; -export type PatchV1EmploymentsEmploymentIdResponses = { +export type PostV1CostCalculatorEstimationPdfResponses = { /** * Success */ - 200: EmploymentResponse; + 200: CostCalculatorEstimatePdfResponse; }; -export type PatchV1EmploymentsEmploymentIdResponse = - PatchV1EmploymentsEmploymentIdResponses[keyof PatchV1EmploymentsEmploymentIdResponses]; +export type PostV1CostCalculatorEstimationPdfResponse = + PostV1CostCalculatorEstimationPdfResponses[keyof PostV1CostCalculatorEstimationPdfResponses]; -export type GetV1ScimV2UsersData = { - body?: never; +export type PostAuthOauth2Token2Data = { + /** + * OAuth2Token + */ + body?: OAuth2TokenParams; path?: never; - query?: { - /** - * 1-based index of the first result - */ - startIndex?: number; - /** - * Maximum number of results per page - */ - count?: number; - /** - * Filter expression for attributes (supports eq, ne, co, sw, ew, pr, lt, le, gt, ge) - */ - filter?: string; - }; - url: '/v1/scim/v2/Users'; + query?: never; + url: '/auth/oauth2/token'; }; -export type GetV1ScimV2UsersErrors = { +export type PostAuthOauth2Token2Errors = { /** * Bad Request */ - 400: IntegrationsScimErrorResponse; + 400: BadRequestResponse; /** * Unauthorized */ - 401: IntegrationsScimErrorResponse; + 401: UnauthorizedResponse; /** - * Forbidden + * Not Found */ - 403: IntegrationsScimErrorResponse; + 404: NotFoundResponse; /** - * Not Found + * Unprocessable Entity */ - 404: IntegrationsScimErrorResponse; + 422: UnprocessableEntityResponse; + /** + * Too many requests + */ + 429: TooManyRequestsResponse; }; -export type GetV1ScimV2UsersError = - GetV1ScimV2UsersErrors[keyof GetV1ScimV2UsersErrors]; +export type PostAuthOauth2Token2Error = + PostAuthOauth2Token2Errors[keyof PostAuthOauth2Token2Errors]; -export type GetV1ScimV2UsersResponses = { +export type PostAuthOauth2Token2Responses = { /** * Success */ - 200: IntegrationsScimUserListResponse; + 200: OAuth2Tokens; }; -export type GetV1ScimV2UsersResponse = - GetV1ScimV2UsersResponses[keyof GetV1ScimV2UsersResponses]; +export type PostAuthOauth2Token2Response = + PostAuthOauth2Token2Responses[keyof PostAuthOauth2Token2Responses]; -export type GetV1PayrollCalendarsCycleData = { +export type GetV1EmployeeDocumentsIdData = { body?: never; path: { /** - * The cycle for which to list the payroll calendars. Format: YYYY-MM - */ - cycle: string; - }; - query?: { - /** - * Starts fetching records after the given page - */ - page?: number; - /** - * Number of items per page + * Document ID */ - page_size?: number; + id: string; }; - url: '/v1/payroll-calendars/{cycle}'; + query?: never; + url: '/v1/employee/documents/{id}'; }; -export type GetV1PayrollCalendarsCycleErrors = { +export type GetV1EmployeeDocumentsIdErrors = { /** * Unauthorized */ @@ -19949,251 +19804,116 @@ export type GetV1PayrollCalendarsCycleErrors = { 422: UnprocessableEntityResponse; }; -export type GetV1PayrollCalendarsCycleError = - GetV1PayrollCalendarsCycleErrors[keyof GetV1PayrollCalendarsCycleErrors]; +export type GetV1EmployeeDocumentsIdError = + GetV1EmployeeDocumentsIdErrors[keyof GetV1EmployeeDocumentsIdErrors]; -export type GetV1PayrollCalendarsCycleResponses = { +export type GetV1EmployeeDocumentsIdResponses = { /** * Success */ - 200: PayrollCalendarsResponse; + 200: DownloadDocumentResponse; }; -export type GetV1PayrollCalendarsCycleResponse = - GetV1PayrollCalendarsCycleResponses[keyof GetV1PayrollCalendarsCycleResponses]; +export type GetV1EmployeeDocumentsIdResponse = + GetV1EmployeeDocumentsIdResponses[keyof GetV1EmployeeDocumentsIdResponses]; -export type GetV1CompanyCompanyIdCostCenterAllocationsData = { - body?: never; - path: { - /** - * Company ID - */ - company_id: string; - }; - query?: { - /** - * Filters allocations by status. When omitted, allocations of every status are returned. - */ - status?: 'active' | 'scheduled' | 'expired'; - /** - * Starts fetching records after the given page - */ - page?: number; - /** - * Number of items per page - */ - page_size?: number; - }; - url: '/v1/company/{company_id}/cost-center-allocations'; +export type PostV1WebhookEventsReplayData = { + /** + * WebhookEvent + */ + body: ReplayWebhookEventsParams; + path?: never; + query?: never; + url: '/v1/webhook-events/replay'; }; -export type GetV1CompanyCompanyIdCostCenterAllocationsErrors = { +export type PostV1WebhookEventsReplayErrors = { /** - * Bad Request + * Unauthorized */ - 400: BadRequestResponse; + 401: UnauthorizedResponse; /** - * Forbidden + * Not Found */ - 403: ForbiddenResponse; + 404: NotFoundResponse; /** * Unprocessable Entity */ 422: UnprocessableEntityResponse; - /** - * Unprocessable Entity - */ - 429: TooManyRequestsResponse; }; -export type GetV1CompanyCompanyIdCostCenterAllocationsError = - GetV1CompanyCompanyIdCostCenterAllocationsErrors[keyof GetV1CompanyCompanyIdCostCenterAllocationsErrors]; +export type PostV1WebhookEventsReplayError = + PostV1WebhookEventsReplayErrors[keyof PostV1WebhookEventsReplayErrors]; -export type GetV1CompanyCompanyIdCostCenterAllocationsResponses = { +export type PostV1WebhookEventsReplayResponses = { /** * Success */ - 200: ListCompanyCostCenterAllocationsResponse; + 200: SuccessResponse; }; -export type GetV1CompanyCompanyIdCostCenterAllocationsResponse = - GetV1CompanyCompanyIdCostCenterAllocationsResponses[keyof GetV1CompanyCompanyIdCostCenterAllocationsResponses]; - -export type GetV1CompaniesCompanyIdLegalEntitiesLegalEntityIdAdministrativeDetailsData = - { - body?: never; - path: { - /** - * Company ID - */ - company_id: UuidSlug; - /** - * Legal entity ID - */ - legal_entity_id: UuidSlug; - }; - query?: never; - url: '/v1/companies/{company_id}/legal-entities/{legal_entity_id}/administrative-details'; - }; - -export type GetV1CompaniesCompanyIdLegalEntitiesLegalEntityIdAdministrativeDetailsErrors = - { - /** - * Unauthorized - */ - 401: UnauthorizedResponse; - /** - * Not Found - */ - 404: NotFoundResponse; - }; - -export type GetV1CompaniesCompanyIdLegalEntitiesLegalEntityIdAdministrativeDetailsError = - GetV1CompaniesCompanyIdLegalEntitiesLegalEntityIdAdministrativeDetailsErrors[keyof GetV1CompaniesCompanyIdLegalEntitiesLegalEntityIdAdministrativeDetailsErrors]; - -export type GetV1CompaniesCompanyIdLegalEntitiesLegalEntityIdAdministrativeDetailsResponses = - { - /** - * ShowLegalEntityAdministrativeDetailsResponse - * - * Country specific json schema driven administrative details for legal entities - */ - 200: { - data: { - [key: string]: unknown; - }; - }; - }; - -export type GetV1CompaniesCompanyIdLegalEntitiesLegalEntityIdAdministrativeDetailsResponse = - GetV1CompaniesCompanyIdLegalEntitiesLegalEntityIdAdministrativeDetailsResponses[keyof GetV1CompaniesCompanyIdLegalEntitiesLegalEntityIdAdministrativeDetailsResponses]; - -export type PutV1CompaniesCompanyIdLegalEntitiesLegalEntityIdAdministrativeDetailsData = - { - /** - * Legal entity administrative details params - */ - body?: AdministrativeDetailsParams; - path: { - /** - * Company ID - */ - company_id: UuidSlug; - /** - * Legal entity ID - */ - legal_entity_id: UuidSlug; - }; - query?: never; - url: '/v1/companies/{company_id}/legal-entities/{legal_entity_id}/administrative-details'; - }; - -export type PutV1CompaniesCompanyIdLegalEntitiesLegalEntityIdAdministrativeDetailsErrors = - { - /** - * Unauthorized - */ - 401: UnauthorizedResponse; - /** - * Not Found - */ - 404: NotFoundResponse; - /** - * Conflict - */ - 409: ConflictResponse; - /** - * Unprocessable Entity - */ - 422: UnprocessableEntityResponse; - /** - * Unprocessable Entity - */ - 429: TooManyRequestsResponse; - }; - -export type PutV1CompaniesCompanyIdLegalEntitiesLegalEntityIdAdministrativeDetailsError = - PutV1CompaniesCompanyIdLegalEntitiesLegalEntityIdAdministrativeDetailsErrors[keyof PutV1CompaniesCompanyIdLegalEntitiesLegalEntityIdAdministrativeDetailsErrors]; - -export type PutV1CompaniesCompanyIdLegalEntitiesLegalEntityIdAdministrativeDetailsResponses = - { - /** - * ShowLegalEntityAdministrativeDetailsResponse - * - * Country specific json schema driven administrative details for legal entities - */ - 200: { - data: { - [key: string]: unknown; - }; - }; - }; - -export type PutV1CompaniesCompanyIdLegalEntitiesLegalEntityIdAdministrativeDetailsResponse = - PutV1CompaniesCompanyIdLegalEntitiesLegalEntityIdAdministrativeDetailsResponses[keyof PutV1CompaniesCompanyIdLegalEntitiesLegalEntityIdAdministrativeDetailsResponses]; +export type PostV1WebhookEventsReplayResponse = + PostV1WebhookEventsReplayResponses[keyof PostV1WebhookEventsReplayResponses]; -export type GetV1CostCalculatorRegionsSlugFieldsData = { - body?: never; - path: { - /** - * Slug - */ - slug: string; - }; - query?: { - /** - * If the premium benefits should be included in the response - */ - include_premium_benefits?: boolean; - }; - url: '/v1/cost-calculator/regions/{slug}/fields'; +export type PostV1SandboxWebhookCallbacksTriggerData = { + /** + * Webhook Trigger Params + */ + body?: WebhookTriggerParams; + path?: never; + query?: never; + url: '/v1/sandbox/webhook-callbacks/trigger'; }; -export type GetV1CostCalculatorRegionsSlugFieldsErrors = { +export type PostV1SandboxWebhookCallbacksTriggerErrors = { /** * Unauthorized */ 401: UnauthorizedResponse; /** - * Internal Server Error + * Not Found */ - 500: InternalServerErrorResponse; + 404: NotFoundResponse; + /** + * Unprocessable Entity + */ + 422: UnprocessableEntityResponse; }; -export type GetV1CostCalculatorRegionsSlugFieldsError = - GetV1CostCalculatorRegionsSlugFieldsErrors[keyof GetV1CostCalculatorRegionsSlugFieldsErrors]; +export type PostV1SandboxWebhookCallbacksTriggerError = + PostV1SandboxWebhookCallbacksTriggerErrors[keyof PostV1SandboxWebhookCallbacksTriggerErrors]; -export type GetV1CostCalculatorRegionsSlugFieldsResponses = { +export type PostV1SandboxWebhookCallbacksTriggerResponses = { /** * Success */ - 200: JsonSchemaResponse; + 200: SuccessResponse; }; -export type GetV1CostCalculatorRegionsSlugFieldsResponse = - GetV1CostCalculatorRegionsSlugFieldsResponses[keyof GetV1CostCalculatorRegionsSlugFieldsResponses]; +export type PostV1SandboxWebhookCallbacksTriggerResponse = + PostV1SandboxWebhookCallbacksTriggerResponses[keyof PostV1SandboxWebhookCallbacksTriggerResponses]; -export type GetV1OffboardingsIdData = { +export type GetV1BulkEmploymentJobsJobIdData = { body?: never; path: { /** - * Offboarding request ID + * Bulk employment job id */ - id: string; + job_id: string; }; query?: never; - url: '/v1/offboardings/{id}'; + url: '/v1/bulk-employment-jobs/{job_id}'; }; -export type GetV1OffboardingsIdErrors = { +export type GetV1BulkEmploymentJobsJobIdErrors = { /** * Bad Request */ 400: BadRequestResponse; /** - * Unauthorized + * Forbidden */ - 401: UnauthorizedResponse; + 403: ForbiddenResponse; /** * Not Found */ @@ -20201,33 +19921,29 @@ export type GetV1OffboardingsIdErrors = { /** * Unprocessable Entity */ - 422: UnprocessableEntityResponse; - /** - * Too many requests - */ 429: TooManyRequestsResponse; }; -export type GetV1OffboardingsIdError = - GetV1OffboardingsIdErrors[keyof GetV1OffboardingsIdErrors]; +export type GetV1BulkEmploymentJobsJobIdError = + GetV1BulkEmploymentJobsJobIdErrors[keyof GetV1BulkEmploymentJobsJobIdErrors]; -export type GetV1OffboardingsIdResponses = { +export type GetV1BulkEmploymentJobsJobIdResponses = { /** * Success */ - 200: OffboardingResponse; + 200: BulkEmploymentImportJobResponse; }; -export type GetV1OffboardingsIdResponse = - GetV1OffboardingsIdResponses[keyof GetV1OffboardingsIdResponses]; +export type GetV1BulkEmploymentJobsJobIdResponse = + GetV1BulkEmploymentJobsJobIdResponses[keyof GetV1BulkEmploymentJobsJobIdResponses]; -export type GetV1PayrollRunsPayrollRunIdEmployeeDetailsData = { +export type GetV1BulkEmploymentJobsJobIdRowsData = { body?: never; path: { /** - * Payroll run ID + * Bulk employment job id */ - payroll_run_id: string; + job_id: string; }; query?: { /** @@ -20239,14 +19955,18 @@ export type GetV1PayrollRunsPayrollRunIdEmployeeDetailsData = { */ page_size?: number; }; - url: '/v1/payroll-runs/{payroll_run_id}/employee-details'; + url: '/v1/bulk-employment-jobs/{job_id}/rows'; }; -export type GetV1PayrollRunsPayrollRunIdEmployeeDetailsErrors = { +export type GetV1BulkEmploymentJobsJobIdRowsErrors = { /** - * Unauthorized + * Bad Request */ - 401: UnauthorizedResponse; + 400: BadRequestResponse; + /** + * Forbidden + */ + 403: ForbiddenResponse; /** * Not Found */ @@ -20254,88 +19974,83 @@ export type GetV1PayrollRunsPayrollRunIdEmployeeDetailsErrors = { /** * Unprocessable Entity */ - 422: UnprocessableEntityResponse; + 429: TooManyRequestsResponse; }; -export type GetV1PayrollRunsPayrollRunIdEmployeeDetailsError = - GetV1PayrollRunsPayrollRunIdEmployeeDetailsErrors[keyof GetV1PayrollRunsPayrollRunIdEmployeeDetailsErrors]; +export type GetV1BulkEmploymentJobsJobIdRowsError = + GetV1BulkEmploymentJobsJobIdRowsErrors[keyof GetV1BulkEmploymentJobsJobIdRowsErrors]; -export type GetV1PayrollRunsPayrollRunIdEmployeeDetailsResponses = { +export type GetV1BulkEmploymentJobsJobIdRowsResponses = { /** * Success */ - 200: EmployeeDetailsResponse; + 200: ImportJobRowsResponse; }; -export type GetV1PayrollRunsPayrollRunIdEmployeeDetailsResponse = - GetV1PayrollRunsPayrollRunIdEmployeeDetailsResponses[keyof GetV1PayrollRunsPayrollRunIdEmployeeDetailsResponses]; +export type GetV1BulkEmploymentJobsJobIdRowsResponse = + GetV1BulkEmploymentJobsJobIdRowsResponses[keyof GetV1BulkEmploymentJobsJobIdRowsResponses]; -export type GetV1BulkEmploymentJobsJobIdRowsData = { - body?: never; - path: { - /** - * Bulk employment job id - */ - job_id: string; - }; - query?: { - /** - * Starts fetching records after the given page - */ - page?: number; +export type PostV1MagicLinkData = { + /** + * Magic links generator body + */ + body: MagicLinkParams; + headers: { /** - * Number of items per page + * Requires a Company-scoped access token obtained through the Authorization Code flow or the Refresh Token flow. + * + * The refresh token needs to have been obtained through the Authorization Code flow. + * */ - page_size?: number; + Authorization: string; }; - url: '/v1/bulk-employment-jobs/{job_id}/rows'; + path?: never; + query?: never; + url: '/v1/magic-link'; }; -export type GetV1BulkEmploymentJobsJobIdRowsErrors = { - /** - * Bad Request - */ - 400: BadRequestResponse; - /** - * Forbidden - */ - 403: ForbiddenResponse; - /** - * Not Found - */ - 404: NotFoundResponse; +export type PostV1MagicLinkErrors = { /** * Unprocessable Entity */ - 429: TooManyRequestsResponse; + 422: UnprocessableEntityResponse; }; -export type GetV1BulkEmploymentJobsJobIdRowsError = - GetV1BulkEmploymentJobsJobIdRowsErrors[keyof GetV1BulkEmploymentJobsJobIdRowsErrors]; +export type PostV1MagicLinkError = + PostV1MagicLinkErrors[keyof PostV1MagicLinkErrors]; -export type GetV1BulkEmploymentJobsJobIdRowsResponses = { +export type PostV1MagicLinkResponses = { /** * Success */ - 200: ImportJobRowsResponse; + 200: MagicLinkResponse; }; -export type GetV1BulkEmploymentJobsJobIdRowsResponse = - GetV1BulkEmploymentJobsJobIdRowsResponses[keyof GetV1BulkEmploymentJobsJobIdRowsResponses]; +export type PostV1MagicLinkResponse = + PostV1MagicLinkResponses[keyof PostV1MagicLinkResponses]; -export type GetV1EmployeeEmergencyContactData = { +export type GetV1CompaniesCompanyIdData = { body?: never; - path?: never; - query?: { + headers: { /** - * Version of the emergency_contact_details form schema + * Requires a Company-scoped access token obtained through the Authorization Code flow or the Refresh Token flow. + * + * The refresh token needs to have been obtained through the Authorization Code flow. + * */ - emergency_contact_details_json_schema_version?: number | 'latest'; + Authorization: string; }; - url: '/v1/employee/emergency-contact'; + path: { + /** + * Company ID + */ + company_id: string; + }; + query?: never; + url: '/v1/companies/{company_id}'; }; -export type GetV1EmployeeEmergencyContactErrors = { +export type GetV1CompaniesCompanyIdErrors = { /** * Bad Request */ @@ -20344,10 +20059,6 @@ export type GetV1EmployeeEmergencyContactErrors = { * Unauthorized */ 401: UnauthorizedResponse; - /** - * Forbidden - */ - 403: ForbiddenResponse; /** * Not Found */ @@ -20355,38 +20066,61 @@ export type GetV1EmployeeEmergencyContactErrors = { /** * Unprocessable Entity */ + 422: UnprocessableEntityResponse; + /** + * Too many requests + */ 429: TooManyRequestsResponse; }; -export type GetV1EmployeeEmergencyContactError = - GetV1EmployeeEmergencyContactErrors[keyof GetV1EmployeeEmergencyContactErrors]; +export type GetV1CompaniesCompanyIdError = + GetV1CompaniesCompanyIdErrors[keyof GetV1CompaniesCompanyIdErrors]; -export type GetV1EmployeeEmergencyContactResponses = { +export type GetV1CompaniesCompanyIdResponses = { /** * Success */ - 200: EmploymentDetailsOnlyResponse; + 200: CompanyResponse; }; -export type GetV1EmployeeEmergencyContactResponse = - GetV1EmployeeEmergencyContactResponses[keyof GetV1EmployeeEmergencyContactResponses]; +export type GetV1CompaniesCompanyIdResponse = + GetV1CompaniesCompanyIdResponses[keyof GetV1CompaniesCompanyIdResponses]; -export type PutV1EmployeeEmergencyContactData = { +export type PatchV1CompaniesCompanyId2Data = { /** - * Employee emergency contact params + * Update Company params */ - body?: EmploymentEmergencyContactParams; - path?: never; + body?: UpdateCompanyParams; + headers: { + /** + * Requires a Company-scoped access token obtained through the Authorization Code flow or the Refresh Token flow. + * + * The refresh token needs to have been obtained through the Authorization Code flow. + * + */ + Authorization: string; + }; + path: { + /** + * Company ID + * + */ + company_id: string; + }; query?: { /** - * Version of the emergency_contact_details form schema + * Version of the address_details form schema */ - emergency_contact_details_json_schema_version?: number | 'latest'; + address_details_json_schema_version?: number | 'latest'; + /** + * Version of the bank_account_details form schema + */ + bank_account_details_json_schema_version?: number | 'latest'; }; - url: '/v1/employee/emergency-contact'; + url: '/v1/companies/{company_id}'; }; -export type PutV1EmployeeEmergencyContactErrors = { +export type PatchV1CompaniesCompanyId2Errors = { /** * Bad Request */ @@ -20395,10 +20129,6 @@ export type PutV1EmployeeEmergencyContactErrors = { * Unauthorized */ 401: UnauthorizedResponse; - /** - * Forbidden - */ - 403: ForbiddenResponse; /** * Not Found */ @@ -20408,29 +20138,29 @@ export type PutV1EmployeeEmergencyContactErrors = { */ 422: UnprocessableEntityResponse; /** - * Unprocessable Entity + * Too many requests */ 429: TooManyRequestsResponse; }; -export type PutV1EmployeeEmergencyContactError = - PutV1EmployeeEmergencyContactErrors[keyof PutV1EmployeeEmergencyContactErrors]; +export type PatchV1CompaniesCompanyId2Error = + PatchV1CompaniesCompanyId2Errors[keyof PatchV1CompaniesCompanyId2Errors]; -export type PutV1EmployeeEmergencyContactResponses = { +export type PatchV1CompaniesCompanyId2Responses = { /** * Success */ - 200: EmploymentDetailsOnlyResponse; + 200: CompanyResponse; }; -export type PutV1EmployeeEmergencyContactResponse = - PutV1EmployeeEmergencyContactResponses[keyof PutV1EmployeeEmergencyContactResponses]; +export type PatchV1CompaniesCompanyId2Response = + PatchV1CompaniesCompanyId2Responses[keyof PatchV1CompaniesCompanyId2Responses]; -export type PostV1SandboxEmploymentsData = { +export type PatchV1CompaniesCompanyIdData = { /** - * Employment params + * Update Company params */ - body?: EmploymentCreateParams; + body?: UpdateCompanyParams; headers: { /** * Requires a Company-scoped access token obtained through the Authorization Code flow or the Refresh Token flow. @@ -20440,12 +20170,27 @@ export type PostV1SandboxEmploymentsData = { */ Authorization: string; }; - path?: never; - query?: never; - url: '/v1/sandbox/employments'; + path: { + /** + * Company ID + * + */ + company_id: string; + }; + query?: { + /** + * Version of the address_details form schema + */ + address_details_json_schema_version?: number | 'latest'; + /** + * Version of the bank_account_details form schema + */ + bank_account_details_json_schema_version?: number | 'latest'; + }; + url: '/v1/companies/{company_id}'; }; -export type PostV1SandboxEmploymentsErrors = { +export type PatchV1CompaniesCompanyIdErrors = { /** * Bad Request */ @@ -20468,78 +20213,146 @@ export type PostV1SandboxEmploymentsErrors = { 429: TooManyRequestsResponse; }; -export type PostV1SandboxEmploymentsError = - PostV1SandboxEmploymentsErrors[keyof PostV1SandboxEmploymentsErrors]; +export type PatchV1CompaniesCompanyIdError = + PatchV1CompaniesCompanyIdErrors[keyof PatchV1CompaniesCompanyIdErrors]; -export type PostV1SandboxEmploymentsResponses = { +export type PatchV1CompaniesCompanyIdResponses = { /** * Success */ - 201: EmploymentCreationResponse; + 200: CompanyResponse; }; -export type PostV1SandboxEmploymentsResponse = - PostV1SandboxEmploymentsResponses[keyof PostV1SandboxEmploymentsResponses]; +export type PatchV1CompaniesCompanyIdResponse = + PatchV1CompaniesCompanyIdResponses[keyof PatchV1CompaniesCompanyIdResponses]; -export type PostV1EmploymentsEmploymentIdContractEligibilityData = { - /** - * Contract Eligibility Create Parameters - */ - body: CreateContractEligibilityParams; - path: { +export type GetV1CompaniesSchemaData = { + body?: never; + path?: never; + query: { /** - * Employment ID + * Country code according to ISO 3-digit alphabetic codes. */ - employment_id: string; + country_code: string; + /** + * Name of the desired form + */ + form: 'address_details'; + /** + * Version of the form schema + */ + json_schema_version?: number | 'latest'; }; - query?: never; - url: '/v1/employments/{employment_id}/contract-eligibility'; + url: '/v1/companies/schema'; }; -export type PostV1EmploymentsEmploymentIdContractEligibilityErrors = { +export type GetV1CompaniesSchemaErrors = { /** - * Bad Request + * Unauthorized */ - 400: BadRequestResponse; + 401: UnauthorizedResponse; /** - * Unprocessable Entity + * Not Found */ - 422: UnprocessableEntityResponse; + 404: NotFoundResponse; /** * Unprocessable Entity */ - 429: TooManyRequestsResponse; + 422: UnprocessableEntityResponse; }; -export type PostV1EmploymentsEmploymentIdContractEligibilityError = - PostV1EmploymentsEmploymentIdContractEligibilityErrors[keyof PostV1EmploymentsEmploymentIdContractEligibilityErrors]; +export type GetV1CompaniesSchemaError = + GetV1CompaniesSchemaErrors[keyof GetV1CompaniesSchemaErrors]; -export type PostV1EmploymentsEmploymentIdContractEligibilityResponses = { +export type GetV1CompaniesSchemaResponses = { /** * Success */ - 200: SuccessResponse; + 200: CompanyFormResponse; }; -export type PostV1EmploymentsEmploymentIdContractEligibilityResponse = - PostV1EmploymentsEmploymentIdContractEligibilityResponses[keyof PostV1EmploymentsEmploymentIdContractEligibilityResponses]; +export type GetV1CompaniesSchemaResponse = + GetV1CompaniesSchemaResponses[keyof GetV1CompaniesSchemaResponses]; -export type GetV1CountriesData = { +export type GetV1EmployeeCurrentData = { body?: never; - headers: { - /** - * This endpoint works with any of the access tokens provided. You can use an access - * token obtained through the Client Credentials flow, the Authorization Code flow, or the Refresh Token flow. - * + path?: never; + query?: never; + url: '/v1/employee/current'; +}; + +export type GetV1EmployeeCurrentErrors = { + /** + * Unauthorized + */ + 401: UnauthorizedResponse; + /** + * Forbidden + */ + 403: ForbiddenResponse; +}; + +export type GetV1EmployeeCurrentError = + GetV1EmployeeCurrentErrors[keyof GetV1EmployeeCurrentErrors]; + +export type GetV1EmployeeCurrentResponses = { + /** + * Success + */ + 200: SuccessResponse; +}; + +export type GetV1EmployeeCurrentResponse = + GetV1EmployeeCurrentResponses[keyof GetV1EmployeeCurrentResponses]; + +export type GetV1PricingPlanPartnerTemplatesData = { + body?: never; + path?: never; + query?: never; + url: '/v1/pricing-plan-partner-templates'; +}; + +export type GetV1PricingPlanPartnerTemplatesErrors = { + /** + * Unauthorized + */ + 401: UnauthorizedResponse; + /** + * Not Found + */ + 404: NotFoundResponse; + /** + * Unprocessable Entity + */ + 422: UnprocessableEntityResponse; +}; + +export type GetV1PricingPlanPartnerTemplatesError = + GetV1PricingPlanPartnerTemplatesErrors[keyof GetV1PricingPlanPartnerTemplatesErrors]; + +export type GetV1PricingPlanPartnerTemplatesResponses = { + /** + * Success + */ + 200: ListPricingPlanPartnerTemplatesResponse; +}; + +export type GetV1PricingPlanPartnerTemplatesResponse = + GetV1PricingPlanPartnerTemplatesResponses[keyof GetV1PricingPlanPartnerTemplatesResponses]; + +export type GetV1CountriesCountryCodeEngagementAgreementDetailsData = { + body?: never; + path: { + /** + * Country code according to ISO 3-digit alphabetic codes */ - Authorization: string; + country_code: string; }; - path?: never; query?: never; - url: '/v1/countries'; + url: '/v1/countries/{country_code}/engagement-agreement-details'; }; -export type GetV1CountriesErrors = { +export type GetV1CountriesCountryCodeEngagementAgreementDetailsErrors = { /** * Bad Request */ @@ -20557,23 +20370,126 @@ export type GetV1CountriesErrors = { */ 422: UnprocessableEntityResponse; /** - * Too many requests + * Unprocessable Entity */ 429: TooManyRequestsResponse; }; -export type GetV1CountriesError = - GetV1CountriesErrors[keyof GetV1CountriesErrors]; +export type GetV1CountriesCountryCodeEngagementAgreementDetailsError = + GetV1CountriesCountryCodeEngagementAgreementDetailsErrors[keyof GetV1CountriesCountryCodeEngagementAgreementDetailsErrors]; -export type GetV1CountriesResponses = { +export type GetV1CountriesCountryCodeEngagementAgreementDetailsResponses = { /** * Success */ - 200: CountriesResponse; + 200: EngagementAgreementDetailsResponse; }; -export type GetV1CountriesResponse = - GetV1CountriesResponses[keyof GetV1CountriesResponses]; +export type GetV1CountriesCountryCodeEngagementAgreementDetailsResponse = + GetV1CountriesCountryCodeEngagementAgreementDetailsResponses[keyof GetV1CountriesCountryCodeEngagementAgreementDetailsResponses]; + +export type GetV1EmployeeBankAccountData = { + body?: never; + path?: never; + query?: { + /** + * Version of the bank_account_details form schema + */ + bank_account_details_json_schema_version?: number | 'latest'; + }; + url: '/v1/employee/bank-account'; +}; + +export type GetV1EmployeeBankAccountErrors = { + /** + * Bad Request + */ + 400: BadRequestResponse; + /** + * Unauthorized + */ + 401: UnauthorizedResponse; + /** + * Forbidden + */ + 403: ForbiddenResponse; + /** + * Not Found + */ + 404: NotFoundResponse; + /** + * Unprocessable Entity + */ + 429: TooManyRequestsResponse; +}; + +export type GetV1EmployeeBankAccountError = + GetV1EmployeeBankAccountErrors[keyof GetV1EmployeeBankAccountErrors]; + +export type GetV1EmployeeBankAccountResponses = { + /** + * Success + */ + 200: EmploymentDetailsOnlyResponse; +}; + +export type GetV1EmployeeBankAccountResponse = + GetV1EmployeeBankAccountResponses[keyof GetV1EmployeeBankAccountResponses]; + +export type PutV1EmployeeBankAccountData = { + /** + * Employee bank account details params + */ + body?: EmploymentBankAccountDetailsParams; + path?: never; + query?: { + /** + * Version of the bank_account_details form schema + */ + bank_account_details_json_schema_version?: number | 'latest'; + }; + url: '/v1/employee/bank-account'; +}; + +export type PutV1EmployeeBankAccountErrors = { + /** + * Bad Request + */ + 400: BadRequestResponse; + /** + * Unauthorized + */ + 401: UnauthorizedResponse; + /** + * Forbidden + */ + 403: ForbiddenResponse; + /** + * Not Found + */ + 404: NotFoundResponse; + /** + * Unprocessable Entity + */ + 422: UnprocessableEntityResponse; + /** + * Unprocessable Entity + */ + 429: TooManyRequestsResponse; +}; + +export type PutV1EmployeeBankAccountError = + PutV1EmployeeBankAccountErrors[keyof PutV1EmployeeBankAccountErrors]; + +export type PutV1EmployeeBankAccountResponses = { + /** + * Success + */ + 200: EmploymentDetailsOnlyResponse; +}; + +export type PutV1EmployeeBankAccountResponse = + PutV1EmployeeBankAccountResponses[keyof PutV1EmployeeBankAccountResponses]; export type PutV2EmploymentsEmploymentIdContractDetailsData = { /** @@ -20596,7 +20512,7 @@ export type PutV2EmploymentsEmploymentIdContractDetailsData = { */ skip_benefits?: boolean; }; - url: '/v2/employments/{employment_id}/contract-details'; + url: '/v2/employments/{employment_id}/contract_details'; }; export type PutV2EmploymentsEmploymentIdContractDetailsErrors = { @@ -20643,49 +20559,45 @@ export type PutV2EmploymentsEmploymentIdContractDetailsResponses = { export type PutV2EmploymentsEmploymentIdContractDetailsResponse = PutV2EmploymentsEmploymentIdContractDetailsResponses[keyof PutV2EmploymentsEmploymentIdContractDetailsResponses]; -export type GetV1EmployeePayslipFilesData = { +export type GetV1CompaniesCompanyIdProductPricesData = { body?: never; - path?: never; - query?: { - /** - * Starts fetching records after the given page - */ - page?: number; + path: { /** - * Number of items per page + * Company ID */ - page_size?: number; + company_id: UuidSlug; }; - url: '/v1/employee/payslip-files'; + query?: never; + url: '/v1/companies/{company_id}/product-prices'; }; -export type GetV1EmployeePayslipFilesErrors = { +export type GetV1CompaniesCompanyIdProductPricesErrors = { /** * Unauthorized */ 401: UnauthorizedResponse; - /** - * Forbidden - */ - 403: ForbiddenResponse; /** * Not Found */ 404: NotFoundResponse; + /** + * Unprocessable Entity + */ + 422: UnprocessableEntityResponse; }; -export type GetV1EmployeePayslipFilesError = - GetV1EmployeePayslipFilesErrors[keyof GetV1EmployeePayslipFilesErrors]; +export type GetV1CompaniesCompanyIdProductPricesError = + GetV1CompaniesCompanyIdProductPricesErrors[keyof GetV1CompaniesCompanyIdProductPricesErrors]; -export type GetV1EmployeePayslipFilesResponses = { +export type GetV1CompaniesCompanyIdProductPricesResponses = { /** * Success */ - 200: ListPayslipFilesResponse; + 200: ListProductPricesResponse; }; -export type GetV1EmployeePayslipFilesResponse = - GetV1EmployeePayslipFilesResponses[keyof GetV1EmployeePayslipFilesResponses]; +export type GetV1CompaniesCompanyIdProductPricesResponse = + GetV1CompaniesCompanyIdProductPricesResponses[keyof GetV1CompaniesCompanyIdProductPricesResponses]; export type PostV1CompaniesCompanyIdCreateTokenData = { body?: never; @@ -20732,28 +20644,19 @@ export type PostV1CompaniesCompanyIdCreateTokenResponses = { export type PostV1CompaniesCompanyIdCreateTokenResponse = PostV1CompaniesCompanyIdCreateTokenResponses[keyof PostV1CompaniesCompanyIdCreateTokenResponses]; -export type GetV1CompaniesCompanyIdLegalEntitiesData = { +export type GetV1IdentityVerificationEmploymentIdData = { body?: never; path: { /** - * Company ID - */ - company_id: UuidSlug; - }; - query?: { - /** - * Starts fetching records after the given page - */ - page?: number; - /** - * Number of items per page + * Employment ID */ - page_size?: number; + employment_id: string; }; - url: '/v1/companies/{company_id}/legal-entities'; + query?: never; + url: '/v1/identity-verification/{employment_id}'; }; -export type GetV1CompaniesCompanyIdLegalEntitiesErrors = { +export type GetV1IdentityVerificationEmploymentIdErrors = { /** * Unauthorized */ @@ -20762,53 +20665,58 @@ export type GetV1CompaniesCompanyIdLegalEntitiesErrors = { * Not Found */ 404: NotFoundResponse; + /** + * Unprocessable Entity + */ + 422: UnprocessableEntityResponse; }; -export type GetV1CompaniesCompanyIdLegalEntitiesError = - GetV1CompaniesCompanyIdLegalEntitiesErrors[keyof GetV1CompaniesCompanyIdLegalEntitiesErrors]; +export type GetV1IdentityVerificationEmploymentIdError = + GetV1IdentityVerificationEmploymentIdErrors[keyof GetV1IdentityVerificationEmploymentIdErrors]; -export type GetV1CompaniesCompanyIdLegalEntitiesResponses = { +export type GetV1IdentityVerificationEmploymentIdResponses = { /** * Success */ - 200: ListCompanyLegalEntitiesResponse; + 200: IdentityVerificationResponse; }; -export type GetV1CompaniesCompanyIdLegalEntitiesResponse = - GetV1CompaniesCompanyIdLegalEntitiesResponses[keyof GetV1CompaniesCompanyIdLegalEntitiesResponses]; +export type GetV1IdentityVerificationEmploymentIdResponse = + GetV1IdentityVerificationEmploymentIdResponses[keyof GetV1IdentityVerificationEmploymentIdResponses]; -export type PostV1ReadyData = { - /** - * Employment slug - */ - body?: CompleteOnboarding; - headers: { +export type GetV1ExpensesExpenseIdReceiptsReceiptIdData = { + body?: never; + path: { /** - * Requires a Company-scoped access token obtained through the Authorization Code flow or the Refresh Token flow. - * - * The refresh token needs to have been obtained through the Authorization Code flow. - * + * The expense ID */ - Authorization: string; + expense_id: string; + /** + * The receipt ID + */ + receipt_id: string; }; - path?: never; query?: never; - url: '/v1/ready'; + url: '/v1/expenses/{expense_id}/receipts/{receipt_id}'; }; -export type PostV1ReadyErrors = { +export type GetV1ExpensesExpenseIdReceiptsReceiptIdErrors = { /** * Bad Request */ 400: BadRequestResponse; + /** + * Unauthorized + */ + 401: UnauthorizedResponse; /** * Forbidden */ 403: ForbiddenResponse; /** - * Conflict + * Not Found */ - 409: ConflictResponse; + 404: NotFoundResponse; /** * Unprocessable Entity */ @@ -20819,19 +20727,20 @@ export type PostV1ReadyErrors = { 429: TooManyRequestsResponse; }; -export type PostV1ReadyError = PostV1ReadyErrors[keyof PostV1ReadyErrors]; +export type GetV1ExpensesExpenseIdReceiptsReceiptIdError = + GetV1ExpensesExpenseIdReceiptsReceiptIdErrors[keyof GetV1ExpensesExpenseIdReceiptsReceiptIdErrors]; -export type PostV1ReadyResponses = { +export type GetV1ExpensesExpenseIdReceiptsReceiptIdResponses = { /** * Success */ - 200: EmploymentResponse; + 200: GenericFile; }; -export type PostV1ReadyResponse = - PostV1ReadyResponses[keyof PostV1ReadyResponses]; +export type GetV1ExpensesExpenseIdReceiptsReceiptIdResponse = + GetV1ExpensesExpenseIdReceiptsReceiptIdResponses[keyof GetV1ExpensesExpenseIdReceiptsReceiptIdResponses]; -export type GetV1LeavePoliciesDetailsEmploymentIdData = { +export type GetV1EmploymentsEmploymentIdEmploymentAgreementPreviewData = { body?: never; path: { /** @@ -20840,10 +20749,10 @@ export type GetV1LeavePoliciesDetailsEmploymentIdData = { employment_id: string; }; query?: never; - url: '/v1/leave-policies/details/{employment_id}'; + url: '/v1/employments/{employment_id}/employment-agreement/preview'; }; -export type GetV1LeavePoliciesDetailsEmploymentIdErrors = { +export type GetV1EmploymentsEmploymentIdEmploymentAgreementPreviewErrors = { /** * Unauthorized */ @@ -20858,20 +20767,72 @@ export type GetV1LeavePoliciesDetailsEmploymentIdErrors = { 422: UnprocessableEntityResponse; }; -export type GetV1LeavePoliciesDetailsEmploymentIdError = - GetV1LeavePoliciesDetailsEmploymentIdErrors[keyof GetV1LeavePoliciesDetailsEmploymentIdErrors]; +export type GetV1EmploymentsEmploymentIdEmploymentAgreementPreviewError = + GetV1EmploymentsEmploymentIdEmploymentAgreementPreviewErrors[keyof GetV1EmploymentsEmploymentIdEmploymentAgreementPreviewErrors]; -export type GetV1LeavePoliciesDetailsEmploymentIdResponses = { +export type GetV1EmploymentsEmploymentIdEmploymentAgreementPreviewResponses = { /** * Success */ - 200: ListLeavePoliciesDetailsResponse; + 200: EmploymentAgreementPreviewResponse; }; -export type GetV1LeavePoliciesDetailsEmploymentIdResponse = - GetV1LeavePoliciesDetailsEmploymentIdResponses[keyof GetV1LeavePoliciesDetailsEmploymentIdResponses]; +export type GetV1EmploymentsEmploymentIdEmploymentAgreementPreviewResponse = + GetV1EmploymentsEmploymentIdEmploymentAgreementPreviewResponses[keyof GetV1EmploymentsEmploymentIdEmploymentAgreementPreviewResponses]; -export type GetV1TimeoffTypesData = { +export type GetV1ScimV2GroupsData = { + body?: never; + path?: never; + query?: { + /** + * 1-based index of the first result + */ + startIndex?: number; + /** + * Maximum number of results per page + */ + count?: number; + /** + * Filter expression for attributes (supports eq, ne, co, sw, ew, pr, lt, le, gt, ge) + */ + filter?: string; + }; + url: '/v1/scim/v2/Groups'; +}; + +export type GetV1ScimV2GroupsErrors = { + /** + * Bad Request + */ + 400: IntegrationsScimErrorResponse; + /** + * Unauthorized + */ + 401: IntegrationsScimErrorResponse; + /** + * Forbidden + */ + 403: IntegrationsScimErrorResponse; + /** + * Not Found + */ + 404: IntegrationsScimErrorResponse; +}; + +export type GetV1ScimV2GroupsError = + GetV1ScimV2GroupsErrors[keyof GetV1ScimV2GroupsErrors]; + +export type GetV1ScimV2GroupsResponses = { + /** + * Success + */ + 200: IntegrationsScimGroupListResponse; +}; + +export type GetV1ScimV2GroupsResponse = + GetV1ScimV2GroupsResponses[keyof GetV1ScimV2GroupsResponses]; + +export type GetV1ExpensesIdData = { body?: never; headers: { /** @@ -20882,17 +20843,17 @@ export type GetV1TimeoffTypesData = { */ Authorization: string; }; - path?: never; - query?: { + path: { /** - * Optional. Employment type to list time off types for: `contractor` or `full_time`. Omit for backward-compatible behavior (full-time types). + * Expense ID */ - type?: TimeoffTypesEmploymentType; + id: string; }; - url: '/v1/timeoff/types'; + query?: never; + url: '/v1/expenses/{id}'; }; -export type GetV1TimeoffTypesErrors = { +export type GetV1ExpensesIdErrors = { /** * Bad Request */ @@ -20910,126 +20871,95 @@ export type GetV1TimeoffTypesErrors = { */ 422: UnprocessableEntityResponse; /** - * Unprocessable Entity + * Too many requests */ 429: TooManyRequestsResponse; }; -export type GetV1TimeoffTypesError = - GetV1TimeoffTypesErrors[keyof GetV1TimeoffTypesErrors]; +export type GetV1ExpensesIdError = + GetV1ExpensesIdErrors[keyof GetV1ExpensesIdErrors]; -export type GetV1TimeoffTypesResponses = { +export type GetV1ExpensesIdResponses = { /** * Success */ - 200: ListTimeoffTypesResponse; + 200: ExpenseResponse; }; -export type GetV1TimeoffTypesResponse = - GetV1TimeoffTypesResponses[keyof GetV1TimeoffTypesResponses]; +export type GetV1ExpensesIdResponse = + GetV1ExpensesIdResponses[keyof GetV1ExpensesIdResponses]; -export type PostV1CostCalculatorEstimationCsvData = { +export type PatchV1ExpensesId2Data = { /** - * Estimate params + * Expenses */ - body?: CostCalculatorEstimateParams; - path?: never; + body?: UpdateExpenseParams; + path: { + /** + * Expense ID + */ + id: string; + }; query?: never; - url: '/v1/cost-calculator/estimation-csv'; + url: '/v1/expenses/{id}'; }; -export type PostV1CostCalculatorEstimationCsvErrors = { +export type PatchV1ExpensesId2Errors = { + /** + * Bad Request + */ + 400: BadRequestResponse; + /** + * Unauthorized + */ + 401: UnauthorizedResponse; /** * Not Found */ 404: NotFoundResponse; + /** + * Conflict + */ + 409: ConflictResponse; /** * Unprocessable Entity */ 422: UnprocessableEntityResponse; + /** + * Too many requests + */ + 429: TooManyRequestsResponse; }; -export type PostV1CostCalculatorEstimationCsvError = - PostV1CostCalculatorEstimationCsvErrors[keyof PostV1CostCalculatorEstimationCsvErrors]; +export type PatchV1ExpensesId2Error = + PatchV1ExpensesId2Errors[keyof PatchV1ExpensesId2Errors]; -export type PostV1CostCalculatorEstimationCsvResponses = { +export type PatchV1ExpensesId2Responses = { /** * Success */ - 200: CostCalculatorEstimateCsvResponse; + 200: ExpenseResponse; }; -export type PostV1CostCalculatorEstimationCsvResponse = - PostV1CostCalculatorEstimationCsvResponses[keyof PostV1CostCalculatorEstimationCsvResponses]; - -export type PostV1SandboxCompaniesCompanyIdLegalEntitiesLegalEntityIdActivateGlobalPayrollData = - { - body?: never; - path: { - /** - * Company ID - */ - company_id: string; - /** - * Legal Entity ID to activate Global Payroll on - */ - legal_entity_id: string; - }; - query?: never; - url: '/v1/sandbox/companies/{company_id}/legal-entities/{legal_entity_id}/activate-global-payroll'; - }; +export type PatchV1ExpensesId2Response = + PatchV1ExpensesId2Responses[keyof PatchV1ExpensesId2Responses]; -export type PostV1SandboxCompaniesCompanyIdLegalEntitiesLegalEntityIdActivateGlobalPayrollErrors = - { - /** - * Bad Request - */ - 400: BadRequestResponse; - /** - * Unauthorized - */ - 401: UnauthorizedResponse; - /** - * Not Found - */ - 404: NotFoundResponse; - /** - * Unprocessable Entity - */ - 422: UnprocessableEntityResponse; +export type PatchV1ExpensesIdData = { + /** + * Expenses + */ + body?: UpdateExpenseParams; + path: { /** - * Too many requests + * Expense ID */ - 429: TooManyRequestsResponse; + id: string; }; + query?: never; + url: '/v1/expenses/{id}'; +}; -export type PostV1SandboxCompaniesCompanyIdLegalEntitiesLegalEntityIdActivateGlobalPayrollError = - PostV1SandboxCompaniesCompanyIdLegalEntitiesLegalEntityIdActivateGlobalPayrollErrors[keyof PostV1SandboxCompaniesCompanyIdLegalEntitiesLegalEntityIdActivateGlobalPayrollErrors]; - -export type PostV1SandboxCompaniesCompanyIdLegalEntitiesLegalEntityIdActivateGlobalPayrollResponses = - { - /** - * Success - */ - 200: SuccessResponse; - }; - -export type PostV1SandboxCompaniesCompanyIdLegalEntitiesLegalEntityIdActivateGlobalPayrollResponse = - PostV1SandboxCompaniesCompanyIdLegalEntitiesLegalEntityIdActivateGlobalPayrollResponses[keyof PostV1SandboxCompaniesCompanyIdLegalEntitiesLegalEntityIdActivateGlobalPayrollResponses]; - -export type GetV1EmployeePersonalDetailsData = { - body?: never; - path?: never; - query?: { - /** - * Version of the personal_details form schema - */ - personal_details_json_schema_version?: number | 'latest'; - }; - url: '/v1/employee/personal-details'; -}; - -export type GetV1EmployeePersonalDetailsErrors = { +export type PatchV1ExpensesIdErrors = { /** * Bad Request */ @@ -21038,49 +20968,58 @@ export type GetV1EmployeePersonalDetailsErrors = { * Unauthorized */ 401: UnauthorizedResponse; - /** - * Forbidden - */ - 403: ForbiddenResponse; /** * Not Found */ 404: NotFoundResponse; + /** + * Conflict + */ + 409: ConflictResponse; /** * Unprocessable Entity */ + 422: UnprocessableEntityResponse; + /** + * Too many requests + */ 429: TooManyRequestsResponse; }; -export type GetV1EmployeePersonalDetailsError = - GetV1EmployeePersonalDetailsErrors[keyof GetV1EmployeePersonalDetailsErrors]; +export type PatchV1ExpensesIdError = + PatchV1ExpensesIdErrors[keyof PatchV1ExpensesIdErrors]; -export type GetV1EmployeePersonalDetailsResponses = { +export type PatchV1ExpensesIdResponses = { /** * Success */ - 200: EmploymentDetailsOnlyResponse; + 200: ExpenseResponse; }; -export type GetV1EmployeePersonalDetailsResponse = - GetV1EmployeePersonalDetailsResponses[keyof GetV1EmployeePersonalDetailsResponses]; +export type PatchV1ExpensesIdResponse = + PatchV1ExpensesIdResponses[keyof PatchV1ExpensesIdResponses]; -export type PutV1EmployeePersonalDetailsData = { +export type PutV2EmploymentsEmploymentIdEmergencyContactData = { /** - * Employee personal details params + * Employment emergency contact params */ - body?: EmploymentPersonalDetailsParams; - path?: never; + body?: EmploymentEmergencyContactParams; + path: { + /** + * Employment ID + */ + employment_id: string; + }; query?: { /** - * Version of the personal_details form schema + * Version of the emergency_contact_details form schema */ - personal_details_json_schema_version?: number | 'latest'; + emergency_contact_details_json_schema_version?: number | 'latest'; }; - url: '/v1/employee/personal-details'; + url: '/v2/employments/{employment_id}/emergency_contact'; }; -export type PutV1EmployeePersonalDetailsErrors = { +export type PutV2EmploymentsEmploymentIdEmergencyContactErrors = { /** * Bad Request */ @@ -21097,6 +21036,10 @@ export type PutV1EmployeePersonalDetailsErrors = { * Not Found */ 404: NotFoundResponse; + /** + * Conflict + */ + 409: ConflictResponse; /** * Unprocessable Entity */ @@ -21107,183 +21050,198 @@ export type PutV1EmployeePersonalDetailsErrors = { 429: TooManyRequestsResponse; }; -export type PutV1EmployeePersonalDetailsError = - PutV1EmployeePersonalDetailsErrors[keyof PutV1EmployeePersonalDetailsErrors]; +export type PutV2EmploymentsEmploymentIdEmergencyContactError = + PutV2EmploymentsEmploymentIdEmergencyContactErrors[keyof PutV2EmploymentsEmploymentIdEmergencyContactErrors]; -export type PutV1EmployeePersonalDetailsResponses = { +export type PutV2EmploymentsEmploymentIdEmergencyContactResponses = { /** * Success */ 200: EmploymentDetailsOnlyResponse; }; -export type PutV1EmployeePersonalDetailsResponse = - PutV1EmployeePersonalDetailsResponses[keyof PutV1EmployeePersonalDetailsResponses]; +export type PutV2EmploymentsEmploymentIdEmergencyContactResponse = + PutV2EmploymentsEmploymentIdEmergencyContactResponses[keyof PutV2EmploymentsEmploymentIdEmergencyContactResponses]; -export type GetV1ScimV2GroupsData = { - body?: never; - path?: never; - query?: { +export type DeleteV1OnboardingEmploymentsEmploymentIdPreOnboardingRequirementsRequirementSlugAcknowledgeData = + { + body?: never; + path: { + /** + * Employment ID + */ + employment_id: string; + /** + * Pre-onboarding requirement slug + */ + requirement_slug: string; + }; + query?: never; + url: '/v1/onboarding/employments/{employment_id}/pre-onboarding-requirements/{requirement_slug}/acknowledge'; + }; + +export type DeleteV1OnboardingEmploymentsEmploymentIdPreOnboardingRequirementsRequirementSlugAcknowledgeErrors = + { /** - * 1-based index of the first result + * Unauthorized */ - startIndex?: number; + 401: UnauthorizedResponse; /** - * Maximum number of results per page + * Forbidden */ - count?: number; + 403: ForbiddenResponse; /** - * Filter expression for attributes (supports eq, ne, co, sw, ew, pr, lt, le, gt, ge) + * Not Found */ - filter?: string; + 404: NotFoundResponse; + /** + * Unprocessable Entity + */ + 422: UnprocessableEntityResponse; }; - url: '/v1/scim/v2/Groups'; -}; -export type GetV1ScimV2GroupsErrors = { - /** - * Bad Request - */ - 400: IntegrationsScimErrorResponse; - /** - * Unauthorized - */ - 401: IntegrationsScimErrorResponse; - /** - * Forbidden - */ - 403: IntegrationsScimErrorResponse; - /** - * Not Found - */ - 404: IntegrationsScimErrorResponse; -}; +export type DeleteV1OnboardingEmploymentsEmploymentIdPreOnboardingRequirementsRequirementSlugAcknowledgeError = + DeleteV1OnboardingEmploymentsEmploymentIdPreOnboardingRequirementsRequirementSlugAcknowledgeErrors[keyof DeleteV1OnboardingEmploymentsEmploymentIdPreOnboardingRequirementsRequirementSlugAcknowledgeErrors]; -export type GetV1ScimV2GroupsError = - GetV1ScimV2GroupsErrors[keyof GetV1ScimV2GroupsErrors]; +export type DeleteV1OnboardingEmploymentsEmploymentIdPreOnboardingRequirementsRequirementSlugAcknowledgeResponses = + { + /** + * Success + */ + 200: SuccessResponse; + }; -export type GetV1ScimV2GroupsResponses = { - /** - * Success - */ - 200: IntegrationsScimGroupListResponse; -}; +export type DeleteV1OnboardingEmploymentsEmploymentIdPreOnboardingRequirementsRequirementSlugAcknowledgeResponse = + DeleteV1OnboardingEmploymentsEmploymentIdPreOnboardingRequirementsRequirementSlugAcknowledgeResponses[keyof DeleteV1OnboardingEmploymentsEmploymentIdPreOnboardingRequirementsRequirementSlugAcknowledgeResponses]; -export type GetV1ScimV2GroupsResponse = - GetV1ScimV2GroupsResponses[keyof GetV1ScimV2GroupsResponses]; +export type PostV1OnboardingEmploymentsEmploymentIdPreOnboardingRequirementsRequirementSlugAcknowledgeData = + { + body?: never; + path: { + /** + * Employment ID + */ + employment_id: string; + /** + * Pre-onboarding requirement slug + */ + requirement_slug: string; + }; + query?: never; + url: '/v1/onboarding/employments/{employment_id}/pre-onboarding-requirements/{requirement_slug}/acknowledge'; + }; -export type PostV1ContractorsEmploymentsEmploymentIdContractDocumentsData = { - /** - * CreateContractDocumentParams - */ - body: CreateContractDocument; - path: { +export type PostV1OnboardingEmploymentsEmploymentIdPreOnboardingRequirementsRequirementSlugAcknowledgeErrors = + { /** - * Employment ID + * Unauthorized */ - employment_id: string; + 401: UnauthorizedResponse; + /** + * Forbidden + */ + 403: ForbiddenResponse; + /** + * Not Found + */ + 404: NotFoundResponse; + /** + * Unprocessable Entity + */ + 422: UnprocessableEntityResponse; }; - query?: never; - url: '/v1/contractors/employments/{employment_id}/contract-documents'; -}; - -export type PostV1ContractorsEmploymentsEmploymentIdContractDocumentsErrors = { - /** - * Unauthorized - */ - 401: UnauthorizedResponse; - /** - * Not Found - */ - 404: NotFoundResponse; - /** - * Unprocessable Entity - */ - 422: UnprocessableEntityResponse; -}; -export type PostV1ContractorsEmploymentsEmploymentIdContractDocumentsError = - PostV1ContractorsEmploymentsEmploymentIdContractDocumentsErrors[keyof PostV1ContractorsEmploymentsEmploymentIdContractDocumentsErrors]; +export type PostV1OnboardingEmploymentsEmploymentIdPreOnboardingRequirementsRequirementSlugAcknowledgeError = + PostV1OnboardingEmploymentsEmploymentIdPreOnboardingRequirementsRequirementSlugAcknowledgeErrors[keyof PostV1OnboardingEmploymentsEmploymentIdPreOnboardingRequirementsRequirementSlugAcknowledgeErrors]; -export type PostV1ContractorsEmploymentsEmploymentIdContractDocumentsResponses = +export type PostV1OnboardingEmploymentsEmploymentIdPreOnboardingRequirementsRequirementSlugAcknowledgeResponses = { /** * Success */ - 200: CreateContractDocumentResponse; + 200: CreatePreOnboardingAcknowledgementResponse; }; -export type PostV1ContractorsEmploymentsEmploymentIdContractDocumentsResponse = - PostV1ContractorsEmploymentsEmploymentIdContractDocumentsResponses[keyof PostV1ContractorsEmploymentsEmploymentIdContractDocumentsResponses]; +export type PostV1OnboardingEmploymentsEmploymentIdPreOnboardingRequirementsRequirementSlugAcknowledgeResponse = + PostV1OnboardingEmploymentsEmploymentIdPreOnboardingRequirementsRequirementSlugAcknowledgeResponses[keyof PostV1OnboardingEmploymentsEmploymentIdPreOnboardingRequirementsRequirementSlugAcknowledgeResponses]; -export type PostV1SandboxWebhookCallbacksTriggerData = { +export type PostV1SandboxBenefitRenewalRequestsData = { /** - * Webhook Trigger Params + * Benefit Renewal Request */ - body?: WebhookTriggerParams; + body: BenefitRenewalRequestsCreateBenefitRenewalRequest; + headers: { + /** + * Requires a Company-scoped access token obtained through the Authorization Code flow or the Refresh Token flow. + * + * The refresh token needs to have been obtained through the Authorization Code flow. + * + */ + Authorization: string; + }; path?: never; query?: never; - url: '/v1/sandbox/webhook-callbacks/trigger'; + url: '/v1/sandbox/benefit-renewal-requests'; }; -export type PostV1SandboxWebhookCallbacksTriggerErrors = { +export type PostV1SandboxBenefitRenewalRequestsErrors = { + /** + * Bad Request + */ + 400: BadRequestResponse; /** * Unauthorized */ 401: UnauthorizedResponse; /** - * Not Found + * Unprocessable Entity */ - 404: NotFoundResponse; + 422: UnprocessableEntityResponse; /** * Unprocessable Entity */ - 422: UnprocessableEntityResponse; + 429: TooManyRequestsResponse; }; -export type PostV1SandboxWebhookCallbacksTriggerError = - PostV1SandboxWebhookCallbacksTriggerErrors[keyof PostV1SandboxWebhookCallbacksTriggerErrors]; +export type PostV1SandboxBenefitRenewalRequestsError = + PostV1SandboxBenefitRenewalRequestsErrors[keyof PostV1SandboxBenefitRenewalRequestsErrors]; -export type PostV1SandboxWebhookCallbacksTriggerResponses = { +export type PostV1SandboxBenefitRenewalRequestsResponses = { /** * Success */ - 200: SuccessResponse; + 200: BenefitRenewalRequestsCreateBenefitRenewalRequestResponse; }; -export type PostV1SandboxWebhookCallbacksTriggerResponse = - PostV1SandboxWebhookCallbacksTriggerResponses[keyof PostV1SandboxWebhookCallbacksTriggerResponses]; +export type PostV1SandboxBenefitRenewalRequestsResponse = + PostV1SandboxBenefitRenewalRequestsResponses[keyof PostV1SandboxBenefitRenewalRequestsResponses]; -export type GetV1PayslipsPayslipIdPdfData = { +export type GetV2EmploymentsEmploymentIdBasicInformationData = { body?: never; - headers: { + path: { /** - * Requires a Company-scoped access token obtained through the Authorization Code flow or the Refresh Token flow. - * - * The refresh token needs to have been obtained through the Authorization Code flow. - * + * Employment ID */ - Authorization: string; + employment_id: string; }; - path: { + query?: { /** - * Payslip ID + * Version of the employment_basic_information form schema */ - payslip_id: string; + employment_basic_information_json_schema_version?: number | 'latest'; }; - query?: never; - url: '/v1/payslips/{payslip_id}/pdf'; + url: '/v2/employments/{employment_id}/basic_information'; }; -export type GetV1PayslipsPayslipIdPdfErrors = { +export type GetV2EmploymentsEmploymentIdBasicInformationErrors = { /** * Bad Request */ 400: BadRequestResponse; /** - * Unauthorized + * Forbidden */ - 401: UnauthorizedResponse; + 403: ForbiddenResponse; /** * Not Found */ @@ -21293,96 +21251,57 @@ export type GetV1PayslipsPayslipIdPdfErrors = { */ 422: UnprocessableEntityResponse; /** - * Too many requests + * Unprocessable Entity */ 429: TooManyRequestsResponse; }; -export type GetV1PayslipsPayslipIdPdfError = - GetV1PayslipsPayslipIdPdfErrors[keyof GetV1PayslipsPayslipIdPdfErrors]; +export type GetV2EmploymentsEmploymentIdBasicInformationError = + GetV2EmploymentsEmploymentIdBasicInformationErrors[keyof GetV2EmploymentsEmploymentIdBasicInformationErrors]; -export type GetV1PayslipsPayslipIdPdfResponses = { +export type GetV2EmploymentsEmploymentIdBasicInformationResponses = { /** * Success */ - 200: PayslipDownloadResponse; -}; - -export type GetV1PayslipsPayslipIdPdfResponse = - GetV1PayslipsPayslipIdPdfResponses[keyof GetV1PayslipsPayslipIdPdfResponses]; - -export type PostV1CurrencyConverterEffectiveData = { - /** - * Convert currency parameters - */ - body: ConvertCurrencyParams; - path?: never; - query?: never; - url: '/v1/currency-converter/effective'; -}; - -export type PostV1CurrencyConverterEffectiveErrors = { - /** - * Unauthorized - */ - 401: UnauthorizedResponse; - /** - * Not Found - */ - 404: NotFoundResponse; - /** - * Unprocessable Entity - */ - 422: UnprocessableEntityResponse; + 200: EmploymentDetailsOnlyResponse; }; -export type PostV1CurrencyConverterEffectiveError = - PostV1CurrencyConverterEffectiveErrors[keyof PostV1CurrencyConverterEffectiveErrors]; +export type GetV2EmploymentsEmploymentIdBasicInformationResponse = + GetV2EmploymentsEmploymentIdBasicInformationResponses[keyof GetV2EmploymentsEmploymentIdBasicInformationResponses]; -export type PostV1CurrencyConverterEffectiveResponses = { +export type PutV2EmploymentsEmploymentIdBasicInformationData = { /** - * Success + * Employment basic information params */ - 200: ConvertCurrencyResponse; -}; - -export type PostV1CurrencyConverterEffectiveResponse = - PostV1CurrencyConverterEffectiveResponses[keyof PostV1CurrencyConverterEffectiveResponses]; - -export type GetV1TimeoffIdData = { - body?: never; - headers: { + body?: EmploymentBasicInformationParams; + path: { /** - * Requires a Company-scoped access token obtained through the Authorization Code flow or the Refresh Token flow. - * - * The refresh token needs to have been obtained through the Authorization Code flow. - * + * Employment ID */ - Authorization: string; + employment_id: string; }; - path: { + query?: { /** - * Timeoff ID + * Version of the employment_basic_information form schema */ - id: string; + employment_basic_information_json_schema_version?: number | 'latest'; }; - query?: never; - url: '/v1/timeoff/{id}'; + url: '/v2/employments/{employment_id}/basic_information'; }; -export type GetV1TimeoffIdErrors = { +export type PutV2EmploymentsEmploymentIdBasicInformationErrors = { /** * Bad Request */ 400: BadRequestResponse; /** - * Unauthorized + * Forbidden */ - 401: UnauthorizedResponse; + 403: ForbiddenResponse; /** - * Not Found + * Conflict */ - 404: NotFoundResponse; + 409: ConflictResponse; /** * Unprocessable Entity */ @@ -21393,48 +21312,32 @@ export type GetV1TimeoffIdErrors = { 429: TooManyRequestsResponse; }; -export type GetV1TimeoffIdError = - GetV1TimeoffIdErrors[keyof GetV1TimeoffIdErrors]; +export type PutV2EmploymentsEmploymentIdBasicInformationError = + PutV2EmploymentsEmploymentIdBasicInformationErrors[keyof PutV2EmploymentsEmploymentIdBasicInformationErrors]; -export type GetV1TimeoffIdResponses = { +export type PutV2EmploymentsEmploymentIdBasicInformationResponses = { /** * Success */ - 200: TimeoffResponse; + 200: EmploymentDetailsOnlyResponse; }; -export type GetV1TimeoffIdResponse = - GetV1TimeoffIdResponses[keyof GetV1TimeoffIdResponses]; +export type PutV2EmploymentsEmploymentIdBasicInformationResponse = + PutV2EmploymentsEmploymentIdBasicInformationResponses[keyof PutV2EmploymentsEmploymentIdBasicInformationResponses]; -export type PatchV1TimeoffId2Data = { - /** - * UpdateTimeoff - */ - body: UpdateApprovedTimeoffParams; - headers: { - /** - * Requires a Company-scoped access token obtained through the Authorization Code flow or the Refresh Token flow. - * - * The refresh token needs to have been obtained through the Authorization Code flow. - * - */ - Authorization: string; - }; +export type GetV1LeavePoliciesSummaryEmploymentIdData = { + body?: never; path: { /** - * Timeoff ID + * Employment ID */ - id: string; + employment_id: string; }; query?: never; - url: '/v1/timeoff/{id}'; + url: '/v1/leave-policies/summary/{employment_id}'; }; -export type PatchV1TimeoffId2Errors = { - /** - * Bad Request - */ - 400: BadRequestResponse; +export type GetV1LeavePoliciesSummaryEmploymentIdErrors = { /** * Unauthorized */ @@ -21447,50 +21350,37 @@ export type PatchV1TimeoffId2Errors = { * Unprocessable Entity */ 422: UnprocessableEntityResponse; - /** - * Unprocessable Entity - */ - 429: TooManyRequestsResponse; }; -export type PatchV1TimeoffId2Error = - PatchV1TimeoffId2Errors[keyof PatchV1TimeoffId2Errors]; +export type GetV1LeavePoliciesSummaryEmploymentIdError = + GetV1LeavePoliciesSummaryEmploymentIdErrors[keyof GetV1LeavePoliciesSummaryEmploymentIdErrors]; -export type PatchV1TimeoffId2Responses = { +export type GetV1LeavePoliciesSummaryEmploymentIdResponses = { /** * Success */ - 200: TimeoffResponse; + 200: ListLeavePoliciesSummaryResponse; }; -export type PatchV1TimeoffId2Response = - PatchV1TimeoffId2Responses[keyof PatchV1TimeoffId2Responses]; +export type GetV1LeavePoliciesSummaryEmploymentIdResponse = + GetV1LeavePoliciesSummaryEmploymentIdResponses[keyof GetV1LeavePoliciesSummaryEmploymentIdResponses]; -export type PatchV1TimeoffIdData = { +export type PostV1TimeoffTimeoffIdCancelData = { /** - * UpdateTimeoff + * CancelTimeoff */ - body: UpdateApprovedTimeoffParams; - headers: { - /** - * Requires a Company-scoped access token obtained through the Authorization Code flow or the Refresh Token flow. - * - * The refresh token needs to have been obtained through the Authorization Code flow. - * - */ - Authorization: string; - }; + body: CancelTimeoffParams; path: { /** - * Timeoff ID + * Time Off ID */ - id: string; + timeoff_id: string; }; query?: never; - url: '/v1/timeoff/{id}'; + url: '/v1/timeoff/{timeoff_id}/cancel'; }; -export type PatchV1TimeoffIdErrors = { +export type PostV1TimeoffTimeoffIdCancelErrors = { /** * Bad Request */ @@ -21513,95 +21403,70 @@ export type PatchV1TimeoffIdErrors = { 429: TooManyRequestsResponse; }; -export type PatchV1TimeoffIdError = - PatchV1TimeoffIdErrors[keyof PatchV1TimeoffIdErrors]; +export type PostV1TimeoffTimeoffIdCancelError = + PostV1TimeoffTimeoffIdCancelErrors[keyof PostV1TimeoffTimeoffIdCancelErrors]; -export type PatchV1TimeoffIdResponses = { +export type PostV1TimeoffTimeoffIdCancelResponses = { /** * Success */ 200: TimeoffResponse; }; -export type PatchV1TimeoffIdResponse = - PatchV1TimeoffIdResponses[keyof PatchV1TimeoffIdResponses]; +export type PostV1TimeoffTimeoffIdCancelResponse = + PostV1TimeoffTimeoffIdCancelResponses[keyof PostV1TimeoffTimeoffIdCancelResponses]; -export type PostV1TimeoffTimeoffIdDeclineData = { - /** - * DeclineTimeoff - */ - body: DeclineTimeoffParams; +export type GetV1HelpCenterArticlesIdData = { + body?: never; path: { /** - * Time Off ID + * Help Center Article Zendesk ID */ - timeoff_id: string; + id: number; }; query?: never; - url: '/v1/timeoff/{timeoff_id}/decline'; + url: '/v1/help-center-articles/{id}'; }; -export type PostV1TimeoffTimeoffIdDeclineErrors = { - /** - * Bad Request - */ - 400: BadRequestResponse; - /** - * Unauthorized - */ - 401: UnauthorizedResponse; +export type GetV1HelpCenterArticlesIdErrors = { /** * Not Found */ 404: NotFoundResponse; - /** - * Unprocessable Entity - */ - 422: UnprocessableEntityResponse; - /** - * Unprocessable Entity - */ - 429: TooManyRequestsResponse; }; -export type PostV1TimeoffTimeoffIdDeclineError = - PostV1TimeoffTimeoffIdDeclineErrors[keyof PostV1TimeoffTimeoffIdDeclineErrors]; +export type GetV1HelpCenterArticlesIdError = + GetV1HelpCenterArticlesIdErrors[keyof GetV1HelpCenterArticlesIdErrors]; -export type PostV1TimeoffTimeoffIdDeclineResponses = { +export type GetV1HelpCenterArticlesIdResponses = { /** * Success */ - 200: TimeoffResponse; + 200: HelpCenterArticleResponse; }; -export type PostV1TimeoffTimeoffIdDeclineResponse = - PostV1TimeoffTimeoffIdDeclineResponses[keyof PostV1TimeoffTimeoffIdDeclineResponses]; +export type GetV1HelpCenterArticlesIdResponse = + GetV1HelpCenterArticlesIdResponses[keyof GetV1HelpCenterArticlesIdResponses]; -export type PostV1ContractAmendmentsAutomatableData = { +export type PostV1DocumentsData = { /** - * Contract Amendment + * File */ - body?: CreateContractAmendmentParams; + body: FileParams; headers: { /** - * Requires a Company-scoped access token obtained through the Authorization Code flow or the Refresh Token flow. - * - * The refresh token needs to have been obtained through the Authorization Code flow. + * This endpoint works with any of the access tokens provided. You can use an access + * token obtained through the Client Credentials flow, the Authorization Code flow, or the Refresh Token flow. * */ Authorization: string; }; path?: never; - query?: { - /** - * Version of the form schema - */ - json_schema_version?: number | 'latest'; - }; - url: '/v1/contract-amendments/automatable'; + query?: never; + url: '/v1/documents'; }; -export type PostV1ContractAmendmentsAutomatableErrors = { +export type PostV1DocumentsErrors = { /** * Unauthorized */ @@ -21616,71 +21481,20 @@ export type PostV1ContractAmendmentsAutomatableErrors = { 422: UnprocessableEntityResponse; }; -export type PostV1ContractAmendmentsAutomatableError = - PostV1ContractAmendmentsAutomatableErrors[keyof PostV1ContractAmendmentsAutomatableErrors]; +export type PostV1DocumentsError = + PostV1DocumentsErrors[keyof PostV1DocumentsErrors]; -export type PostV1ContractAmendmentsAutomatableResponses = { - /** - * Success - */ - 200: ContractAmendmentAutomatableResponse; -}; - -export type PostV1ContractAmendmentsAutomatableResponse = - PostV1ContractAmendmentsAutomatableResponses[keyof PostV1ContractAmendmentsAutomatableResponses]; - -export type PostV1TimeoffTimeoffIdApproveData = { - /** - * ApproveTimeoff - */ - body: ApproveTimeoffParams; - path: { - /** - * Time Off ID - */ - timeoff_id: string; - }; - query?: never; - url: '/v1/timeoff/{timeoff_id}/approve'; -}; - -export type PostV1TimeoffTimeoffIdApproveErrors = { - /** - * Bad Request - */ - 400: BadRequestResponse; - /** - * Unauthorized - */ - 401: UnauthorizedResponse; - /** - * Not Found - */ - 404: NotFoundResponse; - /** - * Unprocessable Entity - */ - 422: UnprocessableEntityResponse; - /** - * Unprocessable Entity - */ - 429: TooManyRequestsResponse; -}; - -export type PostV1TimeoffTimeoffIdApproveError = - PostV1TimeoffTimeoffIdApproveErrors[keyof PostV1TimeoffTimeoffIdApproveErrors]; - -export type PostV1TimeoffTimeoffIdApproveResponses = { +export type PostV1DocumentsResponses = { /** * Success */ - 200: TimeoffResponse; + 200: UploadFileResponse; }; -export type PostV1TimeoffTimeoffIdApproveResponse = - PostV1TimeoffTimeoffIdApproveResponses[keyof PostV1TimeoffTimeoffIdApproveResponses]; +export type PostV1DocumentsResponse = + PostV1DocumentsResponses[keyof PostV1DocumentsResponses]; -export type GetV1EmploymentsEmploymentIdFilesData = { +export type PostV1IdentityVerificationEmploymentIdVerifyData = { body?: never; path: { /** @@ -21688,28 +21502,11 @@ export type GetV1EmploymentsEmploymentIdFilesData = { */ employment_id: string; }; - query?: { - /** - * Filter by file type (optional) - */ - type?: string; - /** - * Filter by file sub_type (optional) - */ - sub_type?: string; - /** - * Starts fetching records after the given page - */ - page?: number; - /** - * Number of items per page - */ - page_size?: number; - }; - url: '/v1/employments/{employment_id}/files'; + query?: never; + url: '/v1/identity-verification/{employment_id}/verify'; }; -export type GetV1EmploymentsEmploymentIdFilesErrors = { +export type PostV1IdentityVerificationEmploymentIdVerifyErrors = { /** * Unauthorized */ @@ -21724,18 +21521,18 @@ export type GetV1EmploymentsEmploymentIdFilesErrors = { 422: UnprocessableEntityResponse; }; -export type GetV1EmploymentsEmploymentIdFilesError = - GetV1EmploymentsEmploymentIdFilesErrors[keyof GetV1EmploymentsEmploymentIdFilesErrors]; +export type PostV1IdentityVerificationEmploymentIdVerifyError = + PostV1IdentityVerificationEmploymentIdVerifyErrors[keyof PostV1IdentityVerificationEmploymentIdVerifyErrors]; -export type GetV1EmploymentsEmploymentIdFilesResponses = { +export type PostV1IdentityVerificationEmploymentIdVerifyResponses = { /** * Success */ - 200: ListFilesResponse; + 200: SuccessResponse; }; -export type GetV1EmploymentsEmploymentIdFilesResponse = - GetV1EmploymentsEmploymentIdFilesResponses[keyof GetV1EmploymentsEmploymentIdFilesResponses]; +export type PostV1IdentityVerificationEmploymentIdVerifyResponse = + PostV1IdentityVerificationEmploymentIdVerifyResponses[keyof PostV1IdentityVerificationEmploymentIdVerifyResponses]; export type GetV1CustomFieldsData = { body?: never; @@ -21819,38 +21616,62 @@ export type PostV1CustomFieldsResponses = { export type PostV1CustomFieldsResponse = PostV1CustomFieldsResponses[keyof PostV1CustomFieldsResponses]; -export type GetV1CompanyCurrenciesData = { - body?: never; - path?: never; - query?: never; - url: '/v1/company-currencies'; -}; +export type PostV1SandboxEmploymentsEmploymentIdRiskReserveProofOfPaymentsApproveData = + { + body?: never; + path: { + /** + * Employment ID + */ + employment_id: string; + }; + query?: never; + url: '/v1/sandbox/employments/{employment_id}/risk-reserve-proof-of-payments/approve'; + }; -export type GetV1CompanyCurrenciesErrors = { - /** - * Not Found - */ - 404: NotFoundResponse; -}; +export type PostV1SandboxEmploymentsEmploymentIdRiskReserveProofOfPaymentsApproveErrors = + { + /** + * Bad Request + */ + 400: BadRequestResponse; + /** + * Unauthorized + */ + 401: UnauthorizedResponse; + /** + * Not Found + */ + 404: NotFoundResponse; + /** + * Unprocessable Entity + */ + 422: UnprocessableEntityResponse; + /** + * Too many requests + */ + 429: TooManyRequestsResponse; + }; -export type GetV1CompanyCurrenciesError = - GetV1CompanyCurrenciesErrors[keyof GetV1CompanyCurrenciesErrors]; +export type PostV1SandboxEmploymentsEmploymentIdRiskReserveProofOfPaymentsApproveError = + PostV1SandboxEmploymentsEmploymentIdRiskReserveProofOfPaymentsApproveErrors[keyof PostV1SandboxEmploymentsEmploymentIdRiskReserveProofOfPaymentsApproveErrors]; -export type GetV1CompanyCurrenciesResponses = { - /** - * Success - */ - 200: CompanyCurrenciesResponse; -}; +export type PostV1SandboxEmploymentsEmploymentIdRiskReserveProofOfPaymentsApproveResponses = + { + /** + * Success + */ + 200: RiskReserveProofOfPaymentResponse; + }; -export type GetV1CompanyCurrenciesResponse = - GetV1CompanyCurrenciesResponses[keyof GetV1CompanyCurrenciesResponses]; +export type PostV1SandboxEmploymentsEmploymentIdRiskReserveProofOfPaymentsApproveResponse = + PostV1SandboxEmploymentsEmploymentIdRiskReserveProofOfPaymentsApproveResponses[keyof PostV1SandboxEmploymentsEmploymentIdRiskReserveProofOfPaymentsApproveResponses]; -export type PatchV1SandboxEmploymentsEmploymentId2Data = { +export type PostV1WebhookCallbacksData = { /** - * Employment params + * WebhookCallback */ - body?: EmploymentUpdateParams; + body?: CreateWebhookCallbackParams; headers: { /** * Requires a Company-scoped access token obtained through the Authorization Code flow or the Refresh Token flow. @@ -21860,21 +21681,12 @@ export type PatchV1SandboxEmploymentsEmploymentId2Data = { */ Authorization: string; }; - path: { - /** - * Employment ID - */ - employment_id: string; - }; + path?: never; query?: never; - url: '/v1/sandbox/employments/{employment_id}'; + url: '/v1/webhook-callbacks'; }; -export type PatchV1SandboxEmploymentsEmploymentId2Errors = { - /** - * Bad Request - */ - 400: BadRequestResponse; +export type PostV1WebhookCallbacksErrors = { /** * Unauthorized */ @@ -21883,58 +21695,33 @@ export type PatchV1SandboxEmploymentsEmploymentId2Errors = { * Not Found */ 404: NotFoundResponse; - /** - * Conflict - */ - 409: ConflictResponse; /** * Unprocessable Entity */ 422: UnprocessableEntityResponse; - /** - * Too many requests - */ - 429: TooManyRequestsResponse; }; -export type PatchV1SandboxEmploymentsEmploymentId2Error = - PatchV1SandboxEmploymentsEmploymentId2Errors[keyof PatchV1SandboxEmploymentsEmploymentId2Errors]; +export type PostV1WebhookCallbacksError = + PostV1WebhookCallbacksErrors[keyof PostV1WebhookCallbacksErrors]; -export type PatchV1SandboxEmploymentsEmploymentId2Responses = { +export type PostV1WebhookCallbacksResponses = { /** * Success */ - 200: EmploymentResponse; + 200: WebhookCallbackResponse; }; -export type PatchV1SandboxEmploymentsEmploymentId2Response = - PatchV1SandboxEmploymentsEmploymentId2Responses[keyof PatchV1SandboxEmploymentsEmploymentId2Responses]; +export type PostV1WebhookCallbacksResponse = + PostV1WebhookCallbacksResponses[keyof PostV1WebhookCallbacksResponses]; -export type PatchV1SandboxEmploymentsEmploymentIdData = { - /** - * Employment params - */ - body?: EmploymentUpdateParams; - headers: { - /** - * Requires a Company-scoped access token obtained through the Authorization Code flow or the Refresh Token flow. - * - * The refresh token needs to have been obtained through the Authorization Code flow. - * - */ - Authorization: string; - }; - path: { - /** - * Employment ID - */ - employment_id: string; - }; +export type GetV1SsoConfigurationDetailsData = { + body?: never; + path?: never; query?: never; - url: '/v1/sandbox/employments/{employment_id}'; + url: '/v1/sso-configuration/details'; }; -export type PatchV1SandboxEmploymentsEmploymentIdErrors = { +export type GetV1SsoConfigurationDetailsErrors = { /** * Bad Request */ @@ -21947,55 +21734,100 @@ export type PatchV1SandboxEmploymentsEmploymentIdErrors = { * Not Found */ 404: NotFoundResponse; - /** - * Conflict - */ - 409: ConflictResponse; /** * Unprocessable Entity */ - 422: UnprocessableEntityResponse; - /** - * Too many requests - */ 429: TooManyRequestsResponse; }; -export type PatchV1SandboxEmploymentsEmploymentIdError = - PatchV1SandboxEmploymentsEmploymentIdErrors[keyof PatchV1SandboxEmploymentsEmploymentIdErrors]; +export type GetV1SsoConfigurationDetailsError = + GetV1SsoConfigurationDetailsErrors[keyof GetV1SsoConfigurationDetailsErrors]; -export type PatchV1SandboxEmploymentsEmploymentIdResponses = { +export type GetV1SsoConfigurationDetailsResponses = { /** * Success */ - 200: EmploymentResponse; + 200: SsoConfigurationDetailsResponse; }; -export type PatchV1SandboxEmploymentsEmploymentIdResponse = - PatchV1SandboxEmploymentsEmploymentIdResponses[keyof PatchV1SandboxEmploymentsEmploymentIdResponses]; +export type GetV1SsoConfigurationDetailsResponse = + GetV1SsoConfigurationDetailsResponses[keyof GetV1SsoConfigurationDetailsResponses]; -export type GetV1EmploymentContractsEmploymentIdPendingChangesData = { - body?: never; - headers: { - /** - * Requires a Company-scoped access token obtained through the Authorization Code flow or the Refresh Token flow. - * - * The refresh token needs to have been obtained through the Authorization Code flow. - * +export type PostV1ContractorsEmploymentsEmploymentIdContractDocumentsContractDocumentIdSignData = + { + /** + * SignContractDocument */ - Authorization: string; + body: SignContractDocument; + path: { + /** + * Employment ID + */ + employment_id: string; + /** + * Document ID + */ + contract_document_id: string; + }; + query?: never; + url: '/v1/contractors/employments/{employment_id}/contract-documents/{contract_document_id}/sign'; }; - path: { + +export type PostV1ContractorsEmploymentsEmploymentIdContractDocumentsContractDocumentIdSignErrors = + { /** - * Employment ID + * Bad Request */ - employment_id: string; + 400: BadRequestResponse; + /** + * Forbidden + */ + 403: ForbiddenResponse; }; - query?: never; - url: '/v1/employment-contracts/{employment_id}/pending-changes'; + +export type PostV1ContractorsEmploymentsEmploymentIdContractDocumentsContractDocumentIdSignError = + PostV1ContractorsEmploymentsEmploymentIdContractDocumentsContractDocumentIdSignErrors[keyof PostV1ContractorsEmploymentsEmploymentIdContractDocumentsContractDocumentIdSignErrors]; + +export type PostV1ContractorsEmploymentsEmploymentIdContractDocumentsContractDocumentIdSignResponses = + { + /** + * Success + */ + 200: SuccessResponse; + }; + +export type PostV1ContractorsEmploymentsEmploymentIdContractDocumentsContractDocumentIdSignResponse = + PostV1ContractorsEmploymentsEmploymentIdContractDocumentsContractDocumentIdSignResponses[keyof PostV1ContractorsEmploymentsEmploymentIdContractDocumentsContractDocumentIdSignResponses]; + +export type GetV1PayItemsData = { + body?: never; + path?: never; + query?: { + /** + * Filter by employment slug + */ + employment_slug?: UuidSlug; + /** + * Filter pay items with effective_date >= given date (YYYY-MM-DD) + */ + effective_from?: Date; + /** + * Filter pay items with effective_date <= given date (YYYY-MM-DD) + */ + effective_to?: Date; + /** + * Starts fetching records after the given page + */ + page?: number; + /** + * Number of items per page + */ + page_size?: number; + }; + url: '/v1/pay-items'; }; -export type GetV1EmploymentContractsEmploymentIdPendingChangesErrors = { +export type GetV1PayItemsErrors = { /** * Unauthorized */ @@ -22014,18 +21846,69 @@ export type GetV1EmploymentContractsEmploymentIdPendingChangesErrors = { 422: UnprocessableEntityResponse; }; -export type GetV1EmploymentContractsEmploymentIdPendingChangesError = - GetV1EmploymentContractsEmploymentIdPendingChangesErrors[keyof GetV1EmploymentContractsEmploymentIdPendingChangesErrors]; +export type GetV1PayItemsError = GetV1PayItemsErrors[keyof GetV1PayItemsErrors]; -export type GetV1EmploymentContractsEmploymentIdPendingChangesResponses = { +export type GetV1PayItemsResponses = { /** * Success */ - 200: EmploymentContractPendingChangesResponse; + 200: ListPayItemsResponse; }; -export type GetV1EmploymentContractsEmploymentIdPendingChangesResponse = - GetV1EmploymentContractsEmploymentIdPendingChangesResponses[keyof GetV1EmploymentContractsEmploymentIdPendingChangesResponses]; +export type GetV1PayItemsResponse = + GetV1PayItemsResponses[keyof GetV1PayItemsResponses]; + +export type GetV1ScimV2UsersData = { + body?: never; + path?: never; + query?: { + /** + * 1-based index of the first result + */ + startIndex?: number; + /** + * Maximum number of results per page + */ + count?: number; + /** + * Filter expression for attributes (supports eq, ne, co, sw, ew, pr, lt, le, gt, ge) + */ + filter?: string; + }; + url: '/v1/scim/v2/Users'; +}; + +export type GetV1ScimV2UsersErrors = { + /** + * Bad Request + */ + 400: IntegrationsScimErrorResponse; + /** + * Unauthorized + */ + 401: IntegrationsScimErrorResponse; + /** + * Forbidden + */ + 403: IntegrationsScimErrorResponse; + /** + * Not Found + */ + 404: IntegrationsScimErrorResponse; +}; + +export type GetV1ScimV2UsersError = + GetV1ScimV2UsersErrors[keyof GetV1ScimV2UsersErrors]; + +export type GetV1ScimV2UsersResponses = { + /** + * Success + */ + 200: IntegrationsScimUserListResponse; +}; + +export type GetV1ScimV2UsersResponse = + GetV1ScimV2UsersResponses[keyof GetV1ScimV2UsersResponses]; export type GetV1ResignationsOffboardingRequestIdData = { body?: never; @@ -22075,25 +21958,28 @@ export type GetV1ResignationsOffboardingRequestIdResponses = { export type GetV1ResignationsOffboardingRequestIdResponse = GetV1ResignationsOffboardingRequestIdResponses[keyof GetV1ResignationsOffboardingRequestIdResponses]; -export type PostV1DocumentsData = { - /** - * File - */ - body: FileParams; - headers: { +export type GetV1BillingDocumentsBillingDocumentIdBreakdownData = { + body?: never; + path: { /** - * This endpoint works with any of the access tokens provided. You can use an access - * token obtained through the Client Credentials flow, the Authorization Code flow, or the Refresh Token flow. - * + * The billing document's ID */ - Authorization: string; + billing_document_id: string; }; - path?: never; - query?: never; - url: '/v1/documents'; + query?: { + /** + * Filters the results by the type of the billing breakdown item. + */ + type?: string; + }; + url: '/v1/billing-documents/{billing_document_id}/breakdown'; }; -export type PostV1DocumentsErrors = { +export type GetV1BillingDocumentsBillingDocumentIdBreakdownErrors = { + /** + * Bad Request + */ + 400: BadRequestResponse; /** * Unauthorized */ @@ -22106,47 +21992,45 @@ export type PostV1DocumentsErrors = { * Unprocessable Entity */ 422: UnprocessableEntityResponse; + /** + * Unprocessable Entity + */ + 429: TooManyRequestsResponse; }; -export type PostV1DocumentsError = - PostV1DocumentsErrors[keyof PostV1DocumentsErrors]; +export type GetV1BillingDocumentsBillingDocumentIdBreakdownError = + GetV1BillingDocumentsBillingDocumentIdBreakdownErrors[keyof GetV1BillingDocumentsBillingDocumentIdBreakdownErrors]; -export type PostV1DocumentsResponses = { +export type GetV1BillingDocumentsBillingDocumentIdBreakdownResponses = { /** * Success */ - 200: UploadFileResponse; + 200: BillingDocumentBreakdownResponse; }; -export type PostV1DocumentsResponse = - PostV1DocumentsResponses[keyof PostV1DocumentsResponses]; +export type GetV1BillingDocumentsBillingDocumentIdBreakdownResponse = + GetV1BillingDocumentsBillingDocumentIdBreakdownResponses[keyof GetV1BillingDocumentsBillingDocumentIdBreakdownResponses]; -export type PostV1EmploymentsEmploymentIdInviteData = { - body?: never; - headers: { - /** - * Requires a Company-scoped access token obtained through the Authorization Code flow or the Refresh Token flow. - * - * The refresh token needs to have been obtained through the Authorization Code flow. - * - */ - Authorization: string; - }; +export type PostV1TimeoffTimeoffIdCancelRequestDeclineData = { + /** + * Timeoff + */ + body: DeclineTimeoffParams; path: { /** - * Employment ID + * Time Off ID */ - employment_id: string; + timeoff_id: string; }; query?: never; - url: '/v1/employments/{employment_id}/invite'; + url: '/v1/timeoff/{timeoff_id}/cancel-request/decline'; }; -export type PostV1EmploymentsEmploymentIdInviteErrors = { +export type PostV1TimeoffTimeoffIdCancelRequestDeclineErrors = { /** - * Bad Request + * Unauthorized */ - 400: BadRequestResponse; + 401: UnauthorizedResponse; /** * Conflict */ @@ -22161,45 +22045,44 @@ export type PostV1EmploymentsEmploymentIdInviteErrors = { 429: TooManyRequestsResponse; }; -export type PostV1EmploymentsEmploymentIdInviteError = - PostV1EmploymentsEmploymentIdInviteErrors[keyof PostV1EmploymentsEmploymentIdInviteErrors]; +export type PostV1TimeoffTimeoffIdCancelRequestDeclineError = + PostV1TimeoffTimeoffIdCancelRequestDeclineErrors[keyof PostV1TimeoffTimeoffIdCancelRequestDeclineErrors]; -export type PostV1EmploymentsEmploymentIdInviteResponses = { +export type PostV1TimeoffTimeoffIdCancelRequestDeclineResponses = { /** * Success */ 200: SuccessResponse; }; -export type PostV1EmploymentsEmploymentIdInviteResponse = - PostV1EmploymentsEmploymentIdInviteResponses[keyof PostV1EmploymentsEmploymentIdInviteResponses]; +export type PostV1TimeoffTimeoffIdCancelRequestDeclineResponse = + PostV1TimeoffTimeoffIdCancelRequestDeclineResponses[keyof PostV1TimeoffTimeoffIdCancelRequestDeclineResponses]; -export type GetV1ExpensesIdData = { +export type GetV1PayrollCalendarsData = { body?: never; - headers: { + path?: never; + query?: { /** - * Requires a Company-scoped access token obtained through the Authorization Code flow or the Refresh Token flow. - * - * The refresh token needs to have been obtained through the Authorization Code flow. - * + * Filter payroll calendars by country code */ - Authorization: string; - }; - path: { + country_code?: string; /** - * Expense ID + * Filter payroll calendars by year */ - id: string; + year?: string; + /** + * Starts fetching records after the given page + */ + page?: number; + /** + * Number of items per page + */ + page_size?: number; }; - query?: never; - url: '/v1/expenses/{id}'; + url: '/v1/payroll-calendars'; }; -export type GetV1ExpensesIdErrors = { - /** - * Bad Request - */ - 400: BadRequestResponse; +export type GetV1PayrollCalendarsErrors = { /** * Unauthorized */ @@ -22212,41 +22095,52 @@ export type GetV1ExpensesIdErrors = { * Unprocessable Entity */ 422: UnprocessableEntityResponse; - /** - * Too many requests - */ - 429: TooManyRequestsResponse; }; -export type GetV1ExpensesIdError = - GetV1ExpensesIdErrors[keyof GetV1ExpensesIdErrors]; +export type GetV1PayrollCalendarsError = + GetV1PayrollCalendarsErrors[keyof GetV1PayrollCalendarsErrors]; -export type GetV1ExpensesIdResponses = { +export type GetV1PayrollCalendarsResponses = { /** * Success */ - 200: ExpenseResponse; + 200: PayrollCalendarsEorResponse; }; -export type GetV1ExpensesIdResponse = - GetV1ExpensesIdResponses[keyof GetV1ExpensesIdResponses]; +export type GetV1PayrollCalendarsResponse = + GetV1PayrollCalendarsResponses[keyof GetV1PayrollCalendarsResponses]; -export type PatchV1ExpensesId2Data = { - /** - * Expenses - */ - body?: UpdateExpenseParams; - path: { +export type GetV1WdGphPayDetailData = { + body?: never; + headers?: { /** - * Expense ID + * The preferred language of the inquiring user in Workday */ - id: string; + accept_language?: string; }; - query?: never; - url: '/v1/expenses/{id}'; + path?: never; + query: { + /** + * The pay group ID for identifying the pay group at the vendor system + */ + payGroupExternalId: string; + /** + * The run type id provided in the paySummary API + */ + runTypeId: string; + /** + * The cycle type id, defaults to the main run if not provided + */ + cycleTypeId?: string; + /** + * The period end date in question, defaults to current period if not provided + */ + periodEndDate?: Date; + }; + url: '/v1/wd/gph/payDetail'; }; -export type PatchV1ExpensesId2Errors = { +export type GetV1WdGphPayDetailErrors = { /** * Bad Request */ @@ -22259,53 +22153,117 @@ export type PatchV1ExpensesId2Errors = { * Not Found */ 404: NotFoundResponse; +}; + +export type GetV1WdGphPayDetailError = + GetV1WdGphPayDetailErrors[keyof GetV1WdGphPayDetailErrors]; + +export type GetV1WdGphPayDetailResponses = { /** - * Conflict + * Success */ - 409: ConflictResponse; + 200: PayDetailResponse; +}; + +export type GetV1WdGphPayDetailResponse = + GetV1WdGphPayDetailResponses[keyof GetV1WdGphPayDetailResponses]; + +export type GetV1ContractAmendmentsSchemaData = { + body?: never; + headers: { + /** + * Requires a Company-scoped access token obtained through the Authorization Code flow or the Refresh Token flow. + * + * The refresh token needs to have been obtained through the Authorization Code flow. + * + */ + Authorization: string; + }; + path?: never; + query: { + /** + * The ID of the employment concerned by the contract amendment request. + */ + employment_id: string; + /** + * Country code according to ISO 3-digit alphabetic codes. + */ + country_code: string; + /** + * Name of the desired form + */ + form?: 'contract_amendment'; + /** + * Version of the form schema + */ + json_schema_version?: number | 'latest'; + }; + url: '/v1/contract-amendments/schema'; +}; + +export type GetV1ContractAmendmentsSchemaErrors = { /** - * Unprocessable Entity + * Unauthorized */ - 422: UnprocessableEntityResponse; + 401: UnauthorizedResponse; /** - * Too many requests + * Not Found */ - 429: TooManyRequestsResponse; + 404: NotFoundResponse; + /** + * Unprocessable Entity + */ + 422: UnprocessableEntityResponse; }; -export type PatchV1ExpensesId2Error = - PatchV1ExpensesId2Errors[keyof PatchV1ExpensesId2Errors]; +export type GetV1ContractAmendmentsSchemaError = + GetV1ContractAmendmentsSchemaErrors[keyof GetV1ContractAmendmentsSchemaErrors]; -export type PatchV1ExpensesId2Responses = { +export type GetV1ContractAmendmentsSchemaResponses = { /** * Success */ - 200: ExpenseResponse; + 200: ContractAmendmentFormResponse; }; -export type PatchV1ExpensesId2Response = - PatchV1ExpensesId2Responses[keyof PatchV1ExpensesId2Responses]; +export type GetV1ContractAmendmentsSchemaResponse = + GetV1ContractAmendmentsSchemaResponses[keyof GetV1ContractAmendmentsSchemaResponses]; -export type PatchV1ExpensesIdData = { +export type GetV1TestSchemaData = { + body?: never; + path?: never; + query?: { + /** + * Version of the form schema + */ + json_schema_version?: number | 'latest'; + }; + url: '/v1/test-schema'; +}; + +export type GetV1TestSchemaResponses = { /** - * Expenses + * Success */ - body?: UpdateExpenseParams; + 200: CompanyFormResponse; +}; + +export type GetV1TestSchemaResponse = + GetV1TestSchemaResponses[keyof GetV1TestSchemaResponses]; + +export type GetV1EmploymentsEmploymentIdEmploymentAgreementDownloadData = { + body?: never; path: { /** - * Expense ID + * Employment ID */ - id: string; + employment_id: string; }; query?: never; - url: '/v1/expenses/{id}'; + url: '/v1/employments/{employment_id}/employment-agreement/download'; }; -export type PatchV1ExpensesIdErrors = { - /** - * Bad Request - */ - 400: BadRequestResponse; +export type GetV1EmploymentsEmploymentIdEmploymentAgreementDownloadErrors = { /** * Unauthorized */ @@ -22314,54 +22272,41 @@ export type PatchV1ExpensesIdErrors = { * Not Found */ 404: NotFoundResponse; - /** - * Conflict - */ - 409: ConflictResponse; /** * Unprocessable Entity */ 422: UnprocessableEntityResponse; - /** - * Too many requests - */ - 429: TooManyRequestsResponse; }; -export type PatchV1ExpensesIdError = - PatchV1ExpensesIdErrors[keyof PatchV1ExpensesIdErrors]; +export type GetV1EmploymentsEmploymentIdEmploymentAgreementDownloadError = + GetV1EmploymentsEmploymentIdEmploymentAgreementDownloadErrors[keyof GetV1EmploymentsEmploymentIdEmploymentAgreementDownloadErrors]; -export type PatchV1ExpensesIdResponses = { +export type GetV1EmploymentsEmploymentIdEmploymentAgreementDownloadResponses = { /** * Success */ - 200: ExpenseResponse; + 200: GenericFile; }; -export type PatchV1ExpensesIdResponse = - PatchV1ExpensesIdResponses[keyof PatchV1ExpensesIdResponses]; +export type GetV1EmploymentsEmploymentIdEmploymentAgreementDownloadResponse = + GetV1EmploymentsEmploymentIdEmploymentAgreementDownloadResponses[keyof GetV1EmploymentsEmploymentIdEmploymentAgreementDownloadResponses]; -export type PutV2EmploymentsEmploymentIdBankAccountDetailsData = { +export type PatchV1EmployeeTimeoffId2Data = { /** - * Employment bank account details params + * UpdateTimeoff */ - body?: EmploymentBankAccountDetailsParams; + body: UpdateEmployeeTimeoffParams; path: { /** - * Employment ID - */ - employment_id: string; - }; - query?: { - /** - * Version of the bank_account_details form schema + * Timeoff ID */ - bank_account_details_json_schema_version?: number | 'latest'; + id: string; }; - url: '/v2/employments/{employment_id}/bank-account-details'; + query?: never; + url: '/v1/employee/timeoff/{id}'; }; -export type PutV2EmploymentsEmploymentIdBankAccountDetailsErrors = { +export type PatchV1EmployeeTimeoffId2Errors = { /** * Bad Request */ @@ -22370,18 +22315,10 @@ export type PutV2EmploymentsEmploymentIdBankAccountDetailsErrors = { * Unauthorized */ 401: UnauthorizedResponse; - /** - * Forbidden - */ - 403: ForbiddenResponse; /** * Not Found */ 404: NotFoundResponse; - /** - * Conflict - */ - 409: ConflictResponse; /** * Unprocessable Entity */ @@ -22392,41 +22329,39 @@ export type PutV2EmploymentsEmploymentIdBankAccountDetailsErrors = { 429: TooManyRequestsResponse; }; -export type PutV2EmploymentsEmploymentIdBankAccountDetailsError = - PutV2EmploymentsEmploymentIdBankAccountDetailsErrors[keyof PutV2EmploymentsEmploymentIdBankAccountDetailsErrors]; +export type PatchV1EmployeeTimeoffId2Error = + PatchV1EmployeeTimeoffId2Errors[keyof PatchV1EmployeeTimeoffId2Errors]; -export type PutV2EmploymentsEmploymentIdBankAccountDetailsResponses = { +export type PatchV1EmployeeTimeoffId2Responses = { /** * Success */ - 200: EmploymentDetailsOnlyResponse; + 200: TimeoffResponse; }; -export type PutV2EmploymentsEmploymentIdBankAccountDetailsResponse = - PutV2EmploymentsEmploymentIdBankAccountDetailsResponses[keyof PutV2EmploymentsEmploymentIdBankAccountDetailsResponses]; +export type PatchV1EmployeeTimeoffId2Response = + PatchV1EmployeeTimeoffId2Responses[keyof PatchV1EmployeeTimeoffId2Responses]; -export type GetV1BenefitRenewalRequestsBenefitRenewalRequestIdData = { - body?: never; - headers: { - /** - * Requires a Company-scoped access token obtained through the Authorization Code flow or the Refresh Token flow. - * - * The refresh token needs to have been obtained through the Authorization Code flow. - * - */ - Authorization: string; - }; +export type PatchV1EmployeeTimeoffIdData = { + /** + * UpdateTimeoff + */ + body: UpdateEmployeeTimeoffParams; path: { /** - * Benefit Renewal Request Id + * Timeoff ID */ - benefit_renewal_request_id: UuidSlug; + id: string; }; query?: never; - url: '/v1/benefit-renewal-requests/{benefit_renewal_request_id}'; + url: '/v1/employee/timeoff/{id}'; }; -export type GetV1BenefitRenewalRequestsBenefitRenewalRequestIdErrors = { +export type PatchV1EmployeeTimeoffIdErrors = { + /** + * Bad Request + */ + 400: BadRequestResponse; /** * Unauthorized */ @@ -22439,91 +22374,99 @@ export type GetV1BenefitRenewalRequestsBenefitRenewalRequestIdErrors = { * Unprocessable Entity */ 422: UnprocessableEntityResponse; + /** + * Unprocessable Entity + */ + 429: TooManyRequestsResponse; }; -export type GetV1BenefitRenewalRequestsBenefitRenewalRequestIdError = - GetV1BenefitRenewalRequestsBenefitRenewalRequestIdErrors[keyof GetV1BenefitRenewalRequestsBenefitRenewalRequestIdErrors]; +export type PatchV1EmployeeTimeoffIdError = + PatchV1EmployeeTimeoffIdErrors[keyof PatchV1EmployeeTimeoffIdErrors]; -export type GetV1BenefitRenewalRequestsBenefitRenewalRequestIdResponses = { +export type PatchV1EmployeeTimeoffIdResponses = { /** * Success */ - 200: BenefitRenewalRequestsBenefitRenewalRequestResponse; + 200: TimeoffResponse; }; -export type GetV1BenefitRenewalRequestsBenefitRenewalRequestIdResponse = - GetV1BenefitRenewalRequestsBenefitRenewalRequestIdResponses[keyof GetV1BenefitRenewalRequestsBenefitRenewalRequestIdResponses]; +export type PatchV1EmployeeTimeoffIdResponse = + PatchV1EmployeeTimeoffIdResponses[keyof PatchV1EmployeeTimeoffIdResponses]; -export type PostV1BenefitRenewalRequestsBenefitRenewalRequestIdData = { - /** - * Benefit Renewal Request Response - */ - body?: BenefitRenewalRequestsUpdateBenefitRenewalRequest; - headers: { - /** - * Requires a Company-scoped access token obtained through the Authorization Code flow or the Refresh Token flow. - * - * The refresh token needs to have been obtained through the Authorization Code flow. - * - */ - Authorization: string; - }; +export type GetV1ScimV2GroupsIdData = { + body?: never; path: { /** - * Benefit Renewal Request Id - */ - benefit_renewal_request_id: UuidSlug; - }; - query?: { - /** - * Version of the form schema + * Group ID (slug) */ - json_schema_version?: number | 'latest'; + id: string; }; - url: '/v1/benefit-renewal-requests/{benefit_renewal_request_id}'; + query?: never; + url: '/v1/scim/v2/Groups/{id}'; }; -export type PostV1BenefitRenewalRequestsBenefitRenewalRequestIdErrors = { +export type GetV1ScimV2GroupsIdErrors = { /** * Unauthorized */ - 401: UnauthorizedResponse; + 401: IntegrationsScimErrorResponse; /** - * Unprocessable Entity + * Forbidden */ - 422: UnprocessableEntityResponse; + 403: IntegrationsScimErrorResponse; /** - * Unprocessable Entity + * Not Found */ - 429: TooManyRequestsResponse; + 404: IntegrationsScimErrorResponse; }; -export type PostV1BenefitRenewalRequestsBenefitRenewalRequestIdError = - PostV1BenefitRenewalRequestsBenefitRenewalRequestIdErrors[keyof PostV1BenefitRenewalRequestsBenefitRenewalRequestIdErrors]; +export type GetV1ScimV2GroupsIdError = + GetV1ScimV2GroupsIdErrors[keyof GetV1ScimV2GroupsIdErrors]; -export type PostV1BenefitRenewalRequestsBenefitRenewalRequestIdResponses = { +export type GetV1ScimV2GroupsIdResponses = { /** * Success */ - 200: SuccessResponse; + 200: IntegrationsScimGroup; }; -export type PostV1BenefitRenewalRequestsBenefitRenewalRequestIdResponse = - PostV1BenefitRenewalRequestsBenefitRenewalRequestIdResponses[keyof PostV1BenefitRenewalRequestsBenefitRenewalRequestIdResponses]; +export type GetV1ScimV2GroupsIdResponse = + GetV1ScimV2GroupsIdResponses[keyof GetV1ScimV2GroupsIdResponses]; -export type GetV1EmploymentsEmploymentIdOnboardingStepsData = { +export type GetV1CountriesCountryCodeLegalEntityFormsFormData = { body?: never; path: { /** - * Employment ID + * Country code according to ISO 3-digit alphabetic codes */ - employment_id: UuidSlug; + country_code: string; + /** + * Name of the desired form + */ + form: string; }; - query?: never; - url: '/v1/employments/{employment_id}/onboarding-steps'; + query?: { + /** + * Product type. Default value is global_payroll. + */ + product_type?: 'peo' | 'global_payroll' | 'e2e_payroll'; + /** + * Legal entity id for admistrative_details of e2e payroll products in GBR + */ + legal_entity_id?: UuidSlug; + /** + * Version of the form schema + */ + json_schema_version?: number | 'latest'; + }; + url: '/v1/countries/{country_code}/legal_entity_forms/{form}'; }; -export type GetV1EmploymentsEmploymentIdOnboardingStepsErrors = { +export type GetV1CountriesCountryCodeLegalEntityFormsFormErrors = { + /** + * Bad Request + */ + 400: BadRequestResponse; /** * Unauthorized */ @@ -22532,54 +22475,40 @@ export type GetV1EmploymentsEmploymentIdOnboardingStepsErrors = { * Not Found */ 404: NotFoundResponse; -}; - -export type GetV1EmploymentsEmploymentIdOnboardingStepsError = - GetV1EmploymentsEmploymentIdOnboardingStepsErrors[keyof GetV1EmploymentsEmploymentIdOnboardingStepsErrors]; - -export type GetV1EmploymentsEmploymentIdOnboardingStepsResponses = { - /** - * Success - */ - 200: EmploymentOnboardingStepsResponse; -}; - -export type GetV1EmploymentsEmploymentIdOnboardingStepsResponse = - GetV1EmploymentsEmploymentIdOnboardingStepsResponses[keyof GetV1EmploymentsEmploymentIdOnboardingStepsResponses]; - -export type GetV1EmployeeCurrentData = { - body?: never; - path?: never; - query?: never; - url: '/v1/employee/current'; -}; - -export type GetV1EmployeeCurrentErrors = { /** - * Unauthorized + * Unprocessable Entity */ - 401: UnauthorizedResponse; + 422: UnprocessableEntityResponse; /** - * Forbidden + * Unprocessable Entity */ - 403: ForbiddenResponse; + 429: TooManyRequestsResponse; }; -export type GetV1EmployeeCurrentError = - GetV1EmployeeCurrentErrors[keyof GetV1EmployeeCurrentErrors]; +export type GetV1CountriesCountryCodeLegalEntityFormsFormError = + GetV1CountriesCountryCodeLegalEntityFormsFormErrors[keyof GetV1CountriesCountryCodeLegalEntityFormsFormErrors]; -export type GetV1EmployeeCurrentResponses = { +export type GetV1CountriesCountryCodeLegalEntityFormsFormResponses = { /** * Success */ - 200: SuccessResponse; + 200: CountryFormResponse; }; -export type GetV1EmployeeCurrentResponse = - GetV1EmployeeCurrentResponses[keyof GetV1EmployeeCurrentResponses]; +export type GetV1CountriesCountryCodeLegalEntityFormsFormResponse = + GetV1CountriesCountryCodeLegalEntityFormsFormResponses[keyof GetV1CountriesCountryCodeLegalEntityFormsFormResponses]; -export type GetV1EmploymentsEmploymentIdCompanyStructureNodesData = { +export type GetV1EmploymentContractsEmploymentIdPendingChangesData = { body?: never; + headers: { + /** + * Requires a Company-scoped access token obtained through the Authorization Code flow or the Refresh Token flow. + * + * The refresh token needs to have been obtained through the Authorization Code flow. + * + */ + Authorization: string; + }; path: { /** * Employment ID @@ -22587,14 +22516,18 @@ export type GetV1EmploymentsEmploymentIdCompanyStructureNodesData = { employment_id: string; }; query?: never; - url: '/v1/employments/{employment_id}/company-structure-nodes'; + url: '/v1/employment-contracts/{employment_id}/pending-changes'; }; -export type GetV1EmploymentsEmploymentIdCompanyStructureNodesErrors = { +export type GetV1EmploymentContractsEmploymentIdPendingChangesErrors = { /** * Unauthorized */ 401: UnauthorizedResponse; + /** + * Forbidden + */ + 403: ForbiddenResponse; /** * Not Found */ @@ -22605,41 +22538,36 @@ export type GetV1EmploymentsEmploymentIdCompanyStructureNodesErrors = { 422: UnprocessableEntityResponse; }; -export type GetV1EmploymentsEmploymentIdCompanyStructureNodesError = - GetV1EmploymentsEmploymentIdCompanyStructureNodesErrors[keyof GetV1EmploymentsEmploymentIdCompanyStructureNodesErrors]; +export type GetV1EmploymentContractsEmploymentIdPendingChangesError = + GetV1EmploymentContractsEmploymentIdPendingChangesErrors[keyof GetV1EmploymentContractsEmploymentIdPendingChangesErrors]; -export type GetV1EmploymentsEmploymentIdCompanyStructureNodesResponses = { +export type GetV1EmploymentContractsEmploymentIdPendingChangesResponses = { /** * Success */ - 200: CompanyStructureNodesResponse; + 200: EmploymentContractPendingChangesResponse; }; -export type GetV1EmploymentsEmploymentIdCompanyStructureNodesResponse = - GetV1EmploymentsEmploymentIdCompanyStructureNodesResponses[keyof GetV1EmploymentsEmploymentIdCompanyStructureNodesResponses]; +export type GetV1EmploymentContractsEmploymentIdPendingChangesResponse = + GetV1EmploymentContractsEmploymentIdPendingChangesResponses[keyof GetV1EmploymentContractsEmploymentIdPendingChangesResponses]; -export type GetV1EmploymentsEmploymentIdCustomFieldsData = { +export type GetV2OffboardingsIdData = { body?: never; path: { /** - * Employment ID - */ - employment_id: string; - }; - query?: { - /** - * Starts fetching records after the given page - */ - page?: number; - /** - * Number of items per page + * Offboarding ID */ - page_size?: number; + id: string; }; - url: '/v1/employments/{employment_id}/custom-fields'; + query?: never; + url: '/v2/offboardings/{id}'; }; -export type GetV1EmploymentsEmploymentIdCustomFieldsErrors = { +export type GetV2OffboardingsIdErrors = { + /** + * Bad Request + */ + 400: BadRequestResponse; /** * Unauthorized */ @@ -22652,149 +22580,122 @@ export type GetV1EmploymentsEmploymentIdCustomFieldsErrors = { * Unprocessable Entity */ 422: UnprocessableEntityResponse; + /** + * Too many requests + */ + 429: TooManyRequestsResponse; }; -export type GetV1EmploymentsEmploymentIdCustomFieldsError = - GetV1EmploymentsEmploymentIdCustomFieldsErrors[keyof GetV1EmploymentsEmploymentIdCustomFieldsErrors]; +export type GetV2OffboardingsIdError = + GetV2OffboardingsIdErrors[keyof GetV2OffboardingsIdErrors]; -export type GetV1EmploymentsEmploymentIdCustomFieldsResponses = { +export type GetV2OffboardingsIdResponses = { /** * Success */ - 200: ListEmploymentCustomFieldValuePaginatedResponse; + 200: V2OffboardingResponse; }; -export type GetV1EmploymentsEmploymentIdCustomFieldsResponse = - GetV1EmploymentsEmploymentIdCustomFieldsResponses[keyof GetV1EmploymentsEmploymentIdCustomFieldsResponses]; +export type GetV2OffboardingsIdResponse = + GetV2OffboardingsIdResponses[keyof GetV2OffboardingsIdResponses]; -export type PutV1ResignationsOffboardingRequestIdValidateData = { +export type PostV1SdkTelemetryErrorsData = { /** - * ValidateResignation + * SDK Error Report */ - body: ValidateResignationRequestParams; + body: SdkErrorPayload; + path?: never; + query?: never; + url: '/v1/sdk/telemetry-errors'; +}; + +export type PostV1SdkTelemetryErrorsErrors = { + /** + * Bad Request + */ + 400: ErrorResponse; + /** + * Too Many Requests + */ + 429: RateLimitResponse; +}; + +export type PostV1SdkTelemetryErrorsError = + PostV1SdkTelemetryErrorsErrors[keyof PostV1SdkTelemetryErrorsErrors]; + +export type PostV1SdkTelemetryErrorsResponses = { + /** + * No Content + */ + 204: unknown; +}; + +export type GetV1CompaniesCompanyIdComplianceProfileData = { + body?: never; path: { /** - * Offboarding request ID + * Company ID */ - offboarding_request_id: string; + company_id: UuidSlug; }; query?: never; - url: '/v1/resignations/{offboarding_request_id}/validate'; + url: '/v1/companies/{company_id}/compliance-profile'; }; -export type PutV1ResignationsOffboardingRequestIdValidateErrors = { - /** - * Bad Request - */ - 400: BadRequestResponse; +export type GetV1CompaniesCompanyIdComplianceProfileErrors = { /** * Unauthorized */ 401: UnauthorizedResponse; /** - * Not Found - */ - 404: NotFoundResponse; - /** - * Unprocessable Entity + * Forbidden */ - 422: UnprocessableEntityResponse; + 403: ForbiddenResponse; /** - * Unprocessable Entity + * Not Found */ - 429: TooManyRequestsResponse; + 404: NotFoundResponse; }; -export type PutV1ResignationsOffboardingRequestIdValidateError = - PutV1ResignationsOffboardingRequestIdValidateErrors[keyof PutV1ResignationsOffboardingRequestIdValidateErrors]; +export type GetV1CompaniesCompanyIdComplianceProfileError = + GetV1CompaniesCompanyIdComplianceProfileErrors[keyof GetV1CompaniesCompanyIdComplianceProfileErrors]; -export type PutV1ResignationsOffboardingRequestIdValidateResponses = { +export type GetV1CompaniesCompanyIdComplianceProfileResponses = { /** * Success */ - 200: SuccessResponse; + 200: CompanyComplianceProfileResponse; }; -export type PutV1ResignationsOffboardingRequestIdValidateResponse = - PutV1ResignationsOffboardingRequestIdValidateResponses[keyof PutV1ResignationsOffboardingRequestIdValidateResponses]; - -export type PutV1SandboxCompaniesCompanyIdDefaultLegalEntityLegalEntityIdData = - { - body?: never; - headers: { - /** - * Requires a Company-scoped access token obtained through the Authorization Code flow or the Refresh Token flow. - * - * The refresh token needs to have been obtained through the Authorization Code flow. - * - */ - Authorization: string; - }; - path: { - /** - * Company ID - */ - company_id: string; - /** - * Legal Entity ID to set as the new default - */ - legal_entity_id: string; - }; - query?: never; - url: '/v1/sandbox/companies/{company_id}/default-legal-entity/{legal_entity_id}'; - }; - -export type PutV1SandboxCompaniesCompanyIdDefaultLegalEntityLegalEntityIdErrors = - { - /** - * Bad Request - */ - 400: BadRequestResponse; - /** - * Unauthorized - */ - 401: UnauthorizedResponse; - /** - * Not Found - */ - 404: NotFoundResponse; - /** - * Unprocessable Entity - */ - 422: UnprocessableEntityResponse; - /** - * Too many requests - */ - 429: TooManyRequestsResponse; - }; - -export type PutV1SandboxCompaniesCompanyIdDefaultLegalEntityLegalEntityIdError = - PutV1SandboxCompaniesCompanyIdDefaultLegalEntityLegalEntityIdErrors[keyof PutV1SandboxCompaniesCompanyIdDefaultLegalEntityLegalEntityIdErrors]; +export type GetV1CompaniesCompanyIdComplianceProfileResponse = + GetV1CompaniesCompanyIdComplianceProfileResponses[keyof GetV1CompaniesCompanyIdComplianceProfileResponses]; -export type PutV1SandboxCompaniesCompanyIdDefaultLegalEntityLegalEntityIdResponses = - { +export type GetV1PayslipsIdData = { + body?: never; + headers: { /** - * Success + * Requires a Company-scoped access token obtained through the Authorization Code flow or the Refresh Token flow. + * + * The refresh token needs to have been obtained through the Authorization Code flow. + * */ - 200: SuccessResponse; + Authorization: string; }; - -export type PutV1SandboxCompaniesCompanyIdDefaultLegalEntityLegalEntityIdResponse = - PutV1SandboxCompaniesCompanyIdDefaultLegalEntityLegalEntityIdResponses[keyof PutV1SandboxCompaniesCompanyIdDefaultLegalEntityLegalEntityIdResponses]; - -export type GetV1CompaniesCompanyIdWebhookCallbacksData = { - body?: never; path: { /** - * Company ID + * Payslip ID */ - company_id: string; + id: string; }; query?: never; - url: '/v1/companies/{company_id}/webhook-callbacks'; + url: '/v1/payslips/{id}'; }; -export type GetV1CompaniesCompanyIdWebhookCallbacksErrors = { +export type GetV1PayslipsIdErrors = { + /** + * Bad Request + */ + 400: BadRequestResponse; /** * Unauthorized */ @@ -22803,136 +22704,118 @@ export type GetV1CompaniesCompanyIdWebhookCallbacksErrors = { * Not Found */ 404: NotFoundResponse; + /** + * Unprocessable Entity + */ + 422: UnprocessableEntityResponse; + /** + * Too many requests + */ + 429: TooManyRequestsResponse; }; -export type GetV1CompaniesCompanyIdWebhookCallbacksError = - GetV1CompaniesCompanyIdWebhookCallbacksErrors[keyof GetV1CompaniesCompanyIdWebhookCallbacksErrors]; +export type GetV1PayslipsIdError = + GetV1PayslipsIdErrors[keyof GetV1PayslipsIdErrors]; -export type GetV1CompaniesCompanyIdWebhookCallbacksResponses = { +export type GetV1PayslipsIdResponses = { /** * Success */ - 200: ListWebhookCallbacksResponse; + 200: PayslipResponse; }; -export type GetV1CompaniesCompanyIdWebhookCallbacksResponse = - GetV1CompaniesCompanyIdWebhookCallbacksResponses[keyof GetV1CompaniesCompanyIdWebhookCallbacksResponses]; - -export type GetV1CompaniesCompanyIdLegalEntitiesLegalEntityIdContractorEligibilityData = - { - body?: never; - path: { - /** - * Company ID - */ - company_id: UuidSlug; - /** - * Legal entity ID - */ - legal_entity_id: UuidSlug; - }; - query?: never; - url: '/v1/companies/{company_id}/legal-entities/{legal_entity_id}/contractor-eligibility'; - }; - -export type GetV1CompaniesCompanyIdLegalEntitiesLegalEntityIdContractorEligibilityErrors = - { - /** - * Unauthorized - */ - 401: UnauthorizedResponse; - /** - * Not Found - */ - 404: NotFoundResponse; - }; - -export type GetV1CompaniesCompanyIdLegalEntitiesLegalEntityIdContractorEligibilityError = - GetV1CompaniesCompanyIdLegalEntitiesLegalEntityIdContractorEligibilityErrors[keyof GetV1CompaniesCompanyIdLegalEntitiesLegalEntityIdContractorEligibilityErrors]; - -export type GetV1CompaniesCompanyIdLegalEntitiesLegalEntityIdContractorEligibilityResponses = - { - /** - * Success - */ - 200: ContractorEligibilityResponse; - }; - -export type GetV1CompaniesCompanyIdLegalEntitiesLegalEntityIdContractorEligibilityResponse = - GetV1CompaniesCompanyIdLegalEntitiesLegalEntityIdContractorEligibilityResponses[keyof GetV1CompaniesCompanyIdLegalEntitiesLegalEntityIdContractorEligibilityResponses]; +export type GetV1PayslipsIdResponse = + GetV1PayslipsIdResponses[keyof GetV1PayslipsIdResponses]; -export type GetV1CustomFieldsCustomFieldIdValuesEmploymentIdData = { +export type PostV1TimeoffTimeoffIdCancelRequestApproveData = { body?: never; path: { /** - * Custom field ID - */ - custom_field_id: string; - /** - * Employment ID + * Time Off ID */ - employment_id: string; + timeoff_id: string; }; query?: never; - url: '/v1/custom-fields/{custom_field_id}/values/{employment_id}'; + url: '/v1/timeoff/{timeoff_id}/cancel-request/approve'; }; -export type GetV1CustomFieldsCustomFieldIdValuesEmploymentIdErrors = { +export type PostV1TimeoffTimeoffIdCancelRequestApproveErrors = { /** * Unauthorized */ 401: UnauthorizedResponse; /** - * Not Found + * Unprocessable Entity */ - 404: NotFoundResponse; + 422: UnprocessableEntityResponse; /** * Unprocessable Entity */ - 422: UnprocessableEntityResponse; + 429: TooManyRequestsResponse; }; -export type GetV1CustomFieldsCustomFieldIdValuesEmploymentIdError = - GetV1CustomFieldsCustomFieldIdValuesEmploymentIdErrors[keyof GetV1CustomFieldsCustomFieldIdValuesEmploymentIdErrors]; +export type PostV1TimeoffTimeoffIdCancelRequestApproveError = + PostV1TimeoffTimeoffIdCancelRequestApproveErrors[keyof PostV1TimeoffTimeoffIdCancelRequestApproveErrors]; -export type GetV1CustomFieldsCustomFieldIdValuesEmploymentIdResponses = { +export type PostV1TimeoffTimeoffIdCancelRequestApproveResponses = { /** * Success */ - 200: EmploymentCustomFieldValueResponse; + 200: SuccessResponse; }; -export type GetV1CustomFieldsCustomFieldIdValuesEmploymentIdResponse = - GetV1CustomFieldsCustomFieldIdValuesEmploymentIdResponses[keyof GetV1CustomFieldsCustomFieldIdValuesEmploymentIdResponses]; +export type PostV1TimeoffTimeoffIdCancelRequestApproveResponse = + PostV1TimeoffTimeoffIdCancelRequestApproveResponses[keyof PostV1TimeoffTimeoffIdCancelRequestApproveResponses]; -export type PatchV1CustomFieldsCustomFieldIdValuesEmploymentId2Data = { - /** - * Custom Field Value Update Parameters - */ - body: UpdateEmploymentCustomFieldValueParams; - path: { +export type GetV1WebhookEventsData = { + body?: never; + path?: never; + query?: { /** - * Custom field ID + * Filter by webhook event type */ - custom_field_id: string; + event_type?: string; /** - * Employment ID + * Filter by delivery status (true = 200, false = 4xx/5xx) */ - employment_id: string; + successfully_delivered?: boolean; + /** + * Filter by company ID + */ + company_id?: string; + /** + * Filter by date before (ISO 8601 format) + */ + before?: string; + /** + * Filter by date after (ISO 8601 format) + */ + after?: string; + /** + * Sort order + */ + order?: 'asc' | 'desc'; + /** + * Field to sort by + */ + sort_by?: 'first_triggered_at'; + /** + * Starts fetching records after the given page + */ + page?: number; + /** + * Number of items per page + */ + page_size?: number; }; - query?: never; - url: '/v1/custom-fields/{custom_field_id}/values/{employment_id}'; + url: '/v1/webhook-events'; }; -export type PatchV1CustomFieldsCustomFieldIdValuesEmploymentId2Errors = { +export type GetV1WebhookEventsErrors = { /** * Unauthorized */ 401: UnauthorizedResponse; - /** - * Forbidden - */ - 403: ForbiddenResponse; /** * Not Found */ @@ -22943,47 +22826,49 @@ export type PatchV1CustomFieldsCustomFieldIdValuesEmploymentId2Errors = { 422: UnprocessableEntityResponse; }; -export type PatchV1CustomFieldsCustomFieldIdValuesEmploymentId2Error = - PatchV1CustomFieldsCustomFieldIdValuesEmploymentId2Errors[keyof PatchV1CustomFieldsCustomFieldIdValuesEmploymentId2Errors]; +export type GetV1WebhookEventsError = + GetV1WebhookEventsErrors[keyof GetV1WebhookEventsErrors]; -export type PatchV1CustomFieldsCustomFieldIdValuesEmploymentId2Responses = { +export type GetV1WebhookEventsResponses = { /** * Success */ - 200: EmploymentCustomFieldValueResponse; + 200: ListWebhookEventsResponse; }; -export type PatchV1CustomFieldsCustomFieldIdValuesEmploymentId2Response = - PatchV1CustomFieldsCustomFieldIdValuesEmploymentId2Responses[keyof PatchV1CustomFieldsCustomFieldIdValuesEmploymentId2Responses]; +export type GetV1WebhookEventsResponse = + GetV1WebhookEventsResponses[keyof GetV1WebhookEventsResponses]; -export type PatchV1CustomFieldsCustomFieldIdValuesEmploymentIdData = { - /** - * Custom Field Value Update Parameters - */ - body: UpdateEmploymentCustomFieldValueParams; - path: { - /** - * Custom field ID +export type GetV1TimeoffTypesData = { + body?: never; + headers: { + /** + * Requires a Company-scoped access token obtained through the Authorization Code flow or the Refresh Token flow. + * + * The refresh token needs to have been obtained through the Authorization Code flow. + * */ - custom_field_id: string; + Authorization: string; + }; + path?: never; + query?: { /** - * Employment ID + * Optional. Employment type to list time off types for: `contractor` or `full_time`. Omit for backward-compatible behavior (full-time types). */ - employment_id: string; + type?: TimeoffTypesEmploymentType; }; - query?: never; - url: '/v1/custom-fields/{custom_field_id}/values/{employment_id}'; + url: '/v1/timeoff/types'; }; -export type PatchV1CustomFieldsCustomFieldIdValuesEmploymentIdErrors = { +export type GetV1TimeoffTypesErrors = { /** - * Unauthorized + * Bad Request */ - 401: UnauthorizedResponse; + 400: BadRequestResponse; /** - * Forbidden + * Unauthorized */ - 403: ForbiddenResponse; + 401: UnauthorizedResponse; /** * Not Found */ @@ -22992,83 +22877,136 @@ export type PatchV1CustomFieldsCustomFieldIdValuesEmploymentIdErrors = { * Unprocessable Entity */ 422: UnprocessableEntityResponse; + /** + * Unprocessable Entity + */ + 429: TooManyRequestsResponse; }; -export type PatchV1CustomFieldsCustomFieldIdValuesEmploymentIdError = - PatchV1CustomFieldsCustomFieldIdValuesEmploymentIdErrors[keyof PatchV1CustomFieldsCustomFieldIdValuesEmploymentIdErrors]; +export type GetV1TimeoffTypesError = + GetV1TimeoffTypesErrors[keyof GetV1TimeoffTypesErrors]; -export type PatchV1CustomFieldsCustomFieldIdValuesEmploymentIdResponses = { +export type GetV1TimeoffTypesResponses = { /** * Success */ - 200: EmploymentCustomFieldValueResponse; + 200: ListTimeoffTypesResponse; }; -export type PatchV1CustomFieldsCustomFieldIdValuesEmploymentIdResponse = - PatchV1CustomFieldsCustomFieldIdValuesEmploymentIdResponses[keyof PatchV1CustomFieldsCustomFieldIdValuesEmploymentIdResponses]; +export type GetV1TimeoffTypesResponse = + GetV1TimeoffTypesResponses[keyof GetV1TimeoffTypesResponses]; -export type GetV1ContractorsEmploymentsEmploymentIdCorTerminationRequestsTerminationRequestIdData = - { - body?: never; - path: { - /** - * Employment ID - */ - employment_id: string; - /** - * Termination Request ID - */ - termination_request_id: string; - }; - query?: never; - url: '/v1/contractors/employments/{employment_id}/cor-termination-requests/{termination_request_id}'; +export type GetV1CompaniesCompanyIdLegalEntitiesData = { + body?: never; + path: { + /** + * Company ID + */ + company_id: UuidSlug; }; - -export type GetV1ContractorsEmploymentsEmploymentIdCorTerminationRequestsTerminationRequestIdErrors = - { + query?: { /** - * Forbidden + * Starts fetching records after the given page */ - 403: ForbiddenResponse; + page?: number; /** - * Not Found + * Number of items per page */ - 404: NotFoundResponse; + page_size?: number; }; + url: '/v1/companies/{company_id}/legal-entities'; +}; -export type GetV1ContractorsEmploymentsEmploymentIdCorTerminationRequestsTerminationRequestIdError = - GetV1ContractorsEmploymentsEmploymentIdCorTerminationRequestsTerminationRequestIdErrors[keyof GetV1ContractorsEmploymentsEmploymentIdCorTerminationRequestsTerminationRequestIdErrors]; +export type GetV1CompaniesCompanyIdLegalEntitiesErrors = { + /** + * Unauthorized + */ + 401: UnauthorizedResponse; + /** + * Not Found + */ + 404: NotFoundResponse; +}; -export type GetV1ContractorsEmploymentsEmploymentIdCorTerminationRequestsTerminationRequestIdResponses = - { +export type GetV1CompaniesCompanyIdLegalEntitiesError = + GetV1CompaniesCompanyIdLegalEntitiesErrors[keyof GetV1CompaniesCompanyIdLegalEntitiesErrors]; + +export type GetV1CompaniesCompanyIdLegalEntitiesResponses = { + /** + * Success + */ + 200: ListCompanyLegalEntitiesResponse; +}; + +export type GetV1CompaniesCompanyIdLegalEntitiesResponse = + GetV1CompaniesCompanyIdLegalEntitiesResponses[keyof GetV1CompaniesCompanyIdLegalEntitiesResponses]; + +export type PostV1EmploymentsEmploymentIdContractEligibilityData = { + /** + * Contract Eligibility Create Parameters + */ + body: CreateContractEligibilityParams; + path: { /** - * Success + * Employment ID */ - 200: CorTerminationRequestResponse; + employment_id: string; }; + query?: never; + url: '/v1/employments/{employment_id}/contract-eligibility'; +}; -export type GetV1ContractorsEmploymentsEmploymentIdCorTerminationRequestsTerminationRequestIdResponse = - GetV1ContractorsEmploymentsEmploymentIdCorTerminationRequestsTerminationRequestIdResponses[keyof GetV1ContractorsEmploymentsEmploymentIdCorTerminationRequestsTerminationRequestIdResponses]; +export type PostV1EmploymentsEmploymentIdContractEligibilityErrors = { + /** + * Bad Request + */ + 400: BadRequestResponse; + /** + * Unprocessable Entity + */ + 422: UnprocessableEntityResponse; + /** + * Unprocessable Entity + */ + 429: TooManyRequestsResponse; +}; -export type PostV1ContractorsEmploymentsEmploymentIdTerminateCorEmploymentData = - { - body?: never; - path: { - /** - * Employment ID - */ - employment_id: string; - }; - query?: never; - url: '/v1/contractors/employments/{employment_id}/terminate-cor-employment'; +export type PostV1EmploymentsEmploymentIdContractEligibilityError = + PostV1EmploymentsEmploymentIdContractEligibilityErrors[keyof PostV1EmploymentsEmploymentIdContractEligibilityErrors]; + +export type PostV1EmploymentsEmploymentIdContractEligibilityResponses = { + /** + * Success + */ + 200: SuccessResponse; +}; + +export type PostV1EmploymentsEmploymentIdContractEligibilityResponse = + PostV1EmploymentsEmploymentIdContractEligibilityResponses[keyof PostV1EmploymentsEmploymentIdContractEligibilityResponses]; + +export type GetV1ContractorsEmploymentsEmploymentIdContractorCurrenciesData = { + body?: never; + path: { + /** + * Employment ID + */ + employment_id: string; + }; + query?: { + /** + * Restrict to currencies which payout is guaranteed (default: true) + */ + restrict_to_guaranteed_pay_out_currencies?: boolean; }; + url: '/v1/contractors/employments/{employment_id}/contractor-currencies'; +}; -export type PostV1ContractorsEmploymentsEmploymentIdTerminateCorEmploymentErrors = +export type GetV1ContractorsEmploymentsEmploymentIdContractorCurrenciesErrors = { /** - * Bad Request + * Unauthorized */ - 400: BadRequestResponse; + 401: UnauthorizedResponse; /** * Forbidden */ @@ -23078,87 +23016,62 @@ export type PostV1ContractorsEmploymentsEmploymentIdTerminateCorEmploymentErrors */ 404: NotFoundResponse; /** - * Unprocessable Entity + * Internal Server Error */ - 422: UnprocessableEntityResponse; + 500: InternalServerErrorResponse; }; -export type PostV1ContractorsEmploymentsEmploymentIdTerminateCorEmploymentError = - PostV1ContractorsEmploymentsEmploymentIdTerminateCorEmploymentErrors[keyof PostV1ContractorsEmploymentsEmploymentIdTerminateCorEmploymentErrors]; +export type GetV1ContractorsEmploymentsEmploymentIdContractorCurrenciesError = + GetV1ContractorsEmploymentsEmploymentIdContractorCurrenciesErrors[keyof GetV1ContractorsEmploymentsEmploymentIdContractorCurrenciesErrors]; -export type PostV1ContractorsEmploymentsEmploymentIdTerminateCorEmploymentResponses = +export type GetV1ContractorsEmploymentsEmploymentIdContractorCurrenciesResponses = { /** * Success */ - 200: SuccessResponse; + 200: ContractorCurrencyResponse; }; -export type PostV1ContractorsEmploymentsEmploymentIdTerminateCorEmploymentResponse = - PostV1ContractorsEmploymentsEmploymentIdTerminateCorEmploymentResponses[keyof PostV1ContractorsEmploymentsEmploymentIdTerminateCorEmploymentResponses]; +export type GetV1ContractorsEmploymentsEmploymentIdContractorCurrenciesResponse = + GetV1ContractorsEmploymentsEmploymentIdContractorCurrenciesResponses[keyof GetV1ContractorsEmploymentsEmploymentIdContractorCurrenciesResponses]; -export type PostV1ContractorsEmploymentsEmploymentIdContractDocumentsContractDocumentIdSignData = - { +export type GetV1PayslipsData = { + body?: never; + path?: never; + query?: { /** - * SignContractDocument + * Employment ID */ - body: SignContractDocument; - path: { - /** - * Employment ID - */ - employment_id: string; - /** - * Document ID - */ - contract_document_id: string; - }; - query?: never; - url: '/v1/contractors/employments/{employment_id}/contract-documents/{contract_document_id}/sign'; - }; - -export type PostV1ContractorsEmploymentsEmploymentIdContractDocumentsContractDocumentIdSignErrors = - { + employment_id?: string; /** - * Bad Request + * Filters by payslips `issued_at` field, after or on the same day than the given date */ - 400: BadRequestResponse; + start_date?: string; /** - * Forbidden + * Filters by payslips `issued_at` field, before or or the same day than the given date */ - 403: ForbiddenResponse; - }; - -export type PostV1ContractorsEmploymentsEmploymentIdContractDocumentsContractDocumentIdSignError = - PostV1ContractorsEmploymentsEmploymentIdContractDocumentsContractDocumentIdSignErrors[keyof PostV1ContractorsEmploymentsEmploymentIdContractDocumentsContractDocumentIdSignErrors]; - -export type PostV1ContractorsEmploymentsEmploymentIdContractDocumentsContractDocumentIdSignResponses = - { + end_date?: string; /** - * Success + * Filters by payslips `expected_payout_date` field, after or on the same day than the given date */ - 200: SuccessResponse; - }; - -export type PostV1ContractorsEmploymentsEmploymentIdContractDocumentsContractDocumentIdSignResponse = - PostV1ContractorsEmploymentsEmploymentIdContractDocumentsContractDocumentIdSignResponses[keyof PostV1ContractorsEmploymentsEmploymentIdContractDocumentsContractDocumentIdSignResponses]; - -export type GetV1IdentityCurrentData = { - body?: never; - headers: { + expected_payout_start_date?: string; /** - * This endpoint works with any of the access tokens provided. You can use an access - * token obtained through the Client Credentials flow, the Authorization Code flow, or the Refresh Token flow. - * + * Filters by payslips `expected_payout_date` field, before or or the same day than the given date */ - Authorization: string; + expected_payout_end_date?: string; + /** + * Starts fetching records after the given page + */ + page?: number; + /** + * Change the amount of records returned per page, defaults to 20, limited to 100 + */ + page_size?: number; }; - path?: never; - query?: never; - url: '/v1/identity/current'; + url: '/v1/payslips'; }; -export type GetV1IdentityCurrentErrors = { +export type GetV1PayslipsErrors = { /** * Bad Request */ @@ -23181,21 +23094,23 @@ export type GetV1IdentityCurrentErrors = { 429: TooManyRequestsResponse; }; -export type GetV1IdentityCurrentError = - GetV1IdentityCurrentErrors[keyof GetV1IdentityCurrentErrors]; +export type GetV1PayslipsError = GetV1PayslipsErrors[keyof GetV1PayslipsErrors]; -export type GetV1IdentityCurrentResponses = { +export type GetV1PayslipsResponses = { /** * Success */ - 201: IdentityCurrentResponse; + 200: ListPayslipsResponse; }; -export type GetV1IdentityCurrentResponse = - GetV1IdentityCurrentResponses[keyof GetV1IdentityCurrentResponses]; +export type GetV1PayslipsResponse = + GetV1PayslipsResponses[keyof GetV1PayslipsResponses]; -export type DeleteV1IncentivesIdData = { - body?: never; +export type PostV1SandboxEmploymentsData = { + /** + * Employment params + */ + body?: EmploymentCreateParams; headers: { /** * Requires a Company-scoped access token obtained through the Authorization Code flow or the Refresh Token flow. @@ -23205,17 +23120,12 @@ export type DeleteV1IncentivesIdData = { */ Authorization: string; }; - path: { - /** - * Incentive ID - */ - id: string; - }; + path?: never; query?: never; - url: '/v1/incentives/{id}'; + url: '/v1/sandbox/employments'; }; -export type DeleteV1IncentivesIdErrors = { +export type PostV1SandboxEmploymentsErrors = { /** * Bad Request */ @@ -23228,10 +23138,6 @@ export type DeleteV1IncentivesIdErrors = { * Not Found */ 404: NotFoundResponse; - /** - * Conflict - */ - 409: ConflictResponse; /** * Unprocessable Entity */ @@ -23242,41 +23148,32 @@ export type DeleteV1IncentivesIdErrors = { 429: TooManyRequestsResponse; }; -export type DeleteV1IncentivesIdError = - DeleteV1IncentivesIdErrors[keyof DeleteV1IncentivesIdErrors]; +export type PostV1SandboxEmploymentsError = + PostV1SandboxEmploymentsErrors[keyof PostV1SandboxEmploymentsErrors]; -export type DeleteV1IncentivesIdResponses = { +export type PostV1SandboxEmploymentsResponses = { /** * Success */ - 200: SuccessResponse; + 201: EmploymentCreationResponse; }; -export type DeleteV1IncentivesIdResponse = - DeleteV1IncentivesIdResponses[keyof DeleteV1IncentivesIdResponses]; +export type PostV1SandboxEmploymentsResponse = + PostV1SandboxEmploymentsResponses[keyof PostV1SandboxEmploymentsResponses]; -export type GetV1IncentivesIdData = { +export type GetV1EmployeeEmergencyContactData = { body?: never; - headers: { - /** - * Requires a Company-scoped access token obtained through the Authorization Code flow or the Refresh Token flow. - * - * The refresh token needs to have been obtained through the Authorization Code flow. - * - */ - Authorization: string; - }; - path: { + path?: never; + query?: { /** - * Incentive ID + * Version of the emergency_contact_details form schema */ - id: string; + emergency_contact_details_json_schema_version?: number | 'latest'; }; - query?: never; - url: '/v1/incentives/{id}'; + url: '/v1/employee/emergency-contact'; }; -export type GetV1IncentivesIdErrors = { +export type GetV1EmployeeEmergencyContactErrors = { /** * Bad Request */ @@ -23285,6 +23182,10 @@ export type GetV1IncentivesIdErrors = { * Unauthorized */ 401: UnauthorizedResponse; + /** + * Forbidden + */ + 403: ForbiddenResponse; /** * Not Found */ @@ -23292,51 +23193,38 @@ export type GetV1IncentivesIdErrors = { /** * Unprocessable Entity */ - 422: UnprocessableEntityResponse; - /** - * Too many requests - */ 429: TooManyRequestsResponse; }; -export type GetV1IncentivesIdError = - GetV1IncentivesIdErrors[keyof GetV1IncentivesIdErrors]; +export type GetV1EmployeeEmergencyContactError = + GetV1EmployeeEmergencyContactErrors[keyof GetV1EmployeeEmergencyContactErrors]; -export type GetV1IncentivesIdResponses = { +export type GetV1EmployeeEmergencyContactResponses = { /** * Success */ - 200: IncentiveResponse; + 200: EmploymentDetailsOnlyResponse; }; -export type GetV1IncentivesIdResponse = - GetV1IncentivesIdResponses[keyof GetV1IncentivesIdResponses]; +export type GetV1EmployeeEmergencyContactResponse = + GetV1EmployeeEmergencyContactResponses[keyof GetV1EmployeeEmergencyContactResponses]; -export type PatchV1IncentivesId2Data = { +export type PutV1EmployeeEmergencyContactData = { /** - * Incentive + * Employee emergency contact params */ - body?: UpdateIncentiveParams; - headers: { - /** - * Requires a Company-scoped access token obtained through the Authorization Code flow or the Refresh Token flow. - * - * The refresh token needs to have been obtained through the Authorization Code flow. - * - */ - Authorization: string; - }; - path: { + body?: EmploymentEmergencyContactParams; + path?: never; + query?: { /** - * Incentive ID + * Version of the emergency_contact_details form schema */ - id: string; + emergency_contact_details_json_schema_version?: number | 'latest'; }; - query?: never; - url: '/v1/incentives/{id}'; + url: '/v1/employee/emergency-contact'; }; -export type PatchV1IncentivesId2Errors = { +export type PutV1EmployeeEmergencyContactErrors = { /** * Bad Request */ @@ -23346,65 +23234,49 @@ export type PatchV1IncentivesId2Errors = { */ 401: UnauthorizedResponse; /** - * Not Found + * Forbidden */ - 404: NotFoundResponse; + 403: ForbiddenResponse; /** - * Conflict + * Not Found */ - 409: ConflictResponse; + 404: NotFoundResponse; /** * Unprocessable Entity */ 422: UnprocessableEntityResponse; /** - * Too many requests + * Unprocessable Entity */ 429: TooManyRequestsResponse; }; -export type PatchV1IncentivesId2Error = - PatchV1IncentivesId2Errors[keyof PatchV1IncentivesId2Errors]; +export type PutV1EmployeeEmergencyContactError = + PutV1EmployeeEmergencyContactErrors[keyof PutV1EmployeeEmergencyContactErrors]; -export type PatchV1IncentivesId2Responses = { +export type PutV1EmployeeEmergencyContactResponses = { /** * Success */ - 200: IncentiveResponse; + 200: EmploymentDetailsOnlyResponse; }; -export type PatchV1IncentivesId2Response = - PatchV1IncentivesId2Responses[keyof PatchV1IncentivesId2Responses]; +export type PutV1EmployeeEmergencyContactResponse = + PutV1EmployeeEmergencyContactResponses[keyof PutV1EmployeeEmergencyContactResponses]; -export type PatchV1IncentivesIdData = { - /** - * Incentive - */ - body?: UpdateIncentiveParams; - headers: { - /** - * Requires a Company-scoped access token obtained through the Authorization Code flow or the Refresh Token flow. - * - * The refresh token needs to have been obtained through the Authorization Code flow. - * - */ - Authorization: string; - }; +export type GetV1PayrollRunsPayrollRunIdData = { + body?: never; path: { /** - * Incentive ID + * Payroll run ID */ - id: string; + payroll_run_id: string; }; query?: never; - url: '/v1/incentives/{id}'; + url: '/v1/payroll-runs/{payroll_run_id}'; }; -export type PatchV1IncentivesIdErrors = { - /** - * Bad Request - */ - 400: BadRequestResponse; +export type GetV1PayrollRunsPayrollRunIdErrors = { /** * Unauthorized */ @@ -23413,120 +23285,107 @@ export type PatchV1IncentivesIdErrors = { * Not Found */ 404: NotFoundResponse; - /** - * Conflict - */ - 409: ConflictResponse; /** * Unprocessable Entity */ 422: UnprocessableEntityResponse; - /** - * Too many requests - */ - 429: TooManyRequestsResponse; }; -export type PatchV1IncentivesIdError = - PatchV1IncentivesIdErrors[keyof PatchV1IncentivesIdErrors]; +export type GetV1PayrollRunsPayrollRunIdError = + GetV1PayrollRunsPayrollRunIdErrors[keyof GetV1PayrollRunsPayrollRunIdErrors]; -export type PatchV1IncentivesIdResponses = { +export type GetV1PayrollRunsPayrollRunIdResponses = { /** * Success */ - 200: IncentiveResponse; + 200: PayrollRunResponse; }; -export type PatchV1IncentivesIdResponse = - PatchV1IncentivesIdResponses[keyof PatchV1IncentivesIdResponses]; +export type GetV1PayrollRunsPayrollRunIdResponse = + GetV1PayrollRunsPayrollRunIdResponses[keyof GetV1PayrollRunsPayrollRunIdResponses]; -export type GetV1ContractorsSchemasEligibilityQuestionnaireData = { +export type GetV1OffboardingsIdData = { body?: never; - path?: never; - query: { - /** - * Type of eligibility questionnaire - */ - type: 'contractor_of_record'; + path: { /** - * Version of the form schema + * Offboarding request ID */ - json_schema_version?: number | 'latest'; + id: string; }; - url: '/v1/contractors/schemas/eligibility-questionnaire'; + query?: never; + url: '/v1/offboardings/{id}'; }; -export type GetV1ContractorsSchemasEligibilityQuestionnaireErrors = { +export type GetV1OffboardingsIdErrors = { + /** + * Bad Request + */ + 400: BadRequestResponse; /** * Unauthorized */ 401: UnauthorizedResponse; /** - * Forbidden + * Not Found */ - 403: ForbiddenResponse; + 404: NotFoundResponse; /** * Unprocessable Entity */ 422: UnprocessableEntityResponse; + /** + * Too many requests + */ + 429: TooManyRequestsResponse; }; -export type GetV1ContractorsSchemasEligibilityQuestionnaireError = - GetV1ContractorsSchemasEligibilityQuestionnaireErrors[keyof GetV1ContractorsSchemasEligibilityQuestionnaireErrors]; +export type GetV1OffboardingsIdError = + GetV1OffboardingsIdErrors[keyof GetV1OffboardingsIdErrors]; -export type GetV1ContractorsSchemasEligibilityQuestionnaireResponses = { +export type GetV1OffboardingsIdResponses = { /** * Success */ - 200: EligibilityQuestionnaireJsonSchemaResponse; + 200: OffboardingResponse; }; -export type GetV1ContractorsSchemasEligibilityQuestionnaireResponse = - GetV1ContractorsSchemasEligibilityQuestionnaireResponses[keyof GetV1ContractorsSchemasEligibilityQuestionnaireResponses]; +export type GetV1OffboardingsIdResponse = + GetV1OffboardingsIdResponses[keyof GetV1OffboardingsIdResponses]; -export type GetV1WorkAuthorizationRequestsData = { +export type GetV1ExpensesData = { body?: never; + headers: { + /** + * Requires a Company-scoped access token obtained through the Authorization Code flow or the Refresh Token flow. + * + * The refresh token needs to have been obtained through the Authorization Code flow. + * + */ + Authorization: string; + }; path?: never; query?: { /** - * Filter results on the given status - */ - status?: - | 'pending' - | 'cancelled' - | 'declined_by_manager' - | 'declined_by_remote' - | 'approved_by_manager' - | 'approved_by_remote'; - /** - * Filter results on the given employment slug - */ - employment_id?: string; - /** - * Filter results on the given employee name - */ - employee_name?: string; - /** - * Sort order - */ - order?: 'asc' | 'desc'; - /** - * Field to sort by - */ - sort_by?: 'submitted_at'; - /** - * Starts fetching records after the given page + * Starts fetching records after the given page */ page?: number; /** - * Number of items per page + * Change the amount of records returned per page, defaults to 20, limited to 100 */ page_size?: number; }; - url: '/v1/work-authorization-requests'; + url: '/v1/expenses'; }; -export type GetV1WorkAuthorizationRequestsErrors = { +export type GetV1ExpensesErrors = { + /** + * Bad Request + */ + 400: BadRequestResponse; + /** + * Unauthorized + */ + 401: UnauthorizedResponse; /** * Not Found */ @@ -23535,42 +23394,52 @@ export type GetV1WorkAuthorizationRequestsErrors = { * Unprocessable Entity */ 422: UnprocessableEntityResponse; + /** + * Too many requests + */ + 429: TooManyRequestsResponse; }; -export type GetV1WorkAuthorizationRequestsError = - GetV1WorkAuthorizationRequestsErrors[keyof GetV1WorkAuthorizationRequestsErrors]; +export type GetV1ExpensesError = GetV1ExpensesErrors[keyof GetV1ExpensesErrors]; -export type GetV1WorkAuthorizationRequestsResponses = { +export type GetV1ExpensesResponses = { /** * Success */ - 200: ListWorkAuthorizationRequestsResponse; + 201: ListExpenseResponse; }; -export type GetV1WorkAuthorizationRequestsResponse = - GetV1WorkAuthorizationRequestsResponses[keyof GetV1WorkAuthorizationRequestsResponses]; +export type GetV1ExpensesResponse = + GetV1ExpensesResponses[keyof GetV1ExpensesResponses]; -export type GetV1BulkEmploymentJobsJobIdData = { - body?: never; - path: { +export type PostV1ExpensesData = { + /** + * Expenses + */ + body?: ParamsToCreateExpense; + headers: { /** - * Bulk employment job id + * Requires a Company-scoped access token obtained through the Authorization Code flow or the Refresh Token flow. + * + * The refresh token needs to have been obtained through the Authorization Code flow. + * */ - job_id: string; + Authorization: string; }; + path?: never; query?: never; - url: '/v1/bulk-employment-jobs/{job_id}'; + url: '/v1/expenses'; }; -export type GetV1BulkEmploymentJobsJobIdErrors = { +export type PostV1ExpensesErrors = { /** * Bad Request */ 400: BadRequestResponse; /** - * Forbidden + * Unauthorized */ - 403: ForbiddenResponse; + 401: UnauthorizedResponse; /** * Not Found */ @@ -23578,38 +23447,30 @@ export type GetV1BulkEmploymentJobsJobIdErrors = { /** * Unprocessable Entity */ + 422: UnprocessableEntityResponse; + /** + * Too many requests + */ 429: TooManyRequestsResponse; }; -export type GetV1BulkEmploymentJobsJobIdError = - GetV1BulkEmploymentJobsJobIdErrors[keyof GetV1BulkEmploymentJobsJobIdErrors]; +export type PostV1ExpensesError = + PostV1ExpensesErrors[keyof PostV1ExpensesErrors]; -export type GetV1BulkEmploymentJobsJobIdResponses = { +export type PostV1ExpensesResponses = { /** * Success */ - 200: BulkEmploymentImportJobResponse; + 201: ExpenseResponse; }; -export type GetV1BulkEmploymentJobsJobIdResponse = - GetV1BulkEmploymentJobsJobIdResponses[keyof GetV1BulkEmploymentJobsJobIdResponses]; +export type PostV1ExpensesResponse = + PostV1ExpensesResponses[keyof PostV1ExpensesResponses]; -export type GetV1PayItemsData = { +export type GetV1EmployeePayslipFilesData = { body?: never; path?: never; query?: { - /** - * Filter by employment slug - */ - employment_slug?: UuidSlug; - /** - * Filter pay items with effective_date >= given date (YYYY-MM-DD) - */ - effective_from?: Date; - /** - * Filter pay items with effective_date <= given date (YYYY-MM-DD) - */ - effective_to?: Date; /** * Starts fetching records after the given page */ @@ -23619,10 +23480,10 @@ export type GetV1PayItemsData = { */ page_size?: number; }; - url: '/v1/pay-items'; + url: '/v1/employee/payslip-files'; }; -export type GetV1PayItemsErrors = { +export type GetV1EmployeePayslipFilesErrors = { /** * Unauthorized */ @@ -23635,25 +23496,22 @@ export type GetV1PayItemsErrors = { * Not Found */ 404: NotFoundResponse; - /** - * Unprocessable Entity - */ - 422: UnprocessableEntityResponse; }; -export type GetV1PayItemsError = GetV1PayItemsErrors[keyof GetV1PayItemsErrors]; +export type GetV1EmployeePayslipFilesError = + GetV1EmployeePayslipFilesErrors[keyof GetV1EmployeePayslipFilesErrors]; -export type GetV1PayItemsResponses = { +export type GetV1EmployeePayslipFilesResponses = { /** * Success */ - 200: ListPayItemsResponse; + 200: ListPayslipFilesResponse; }; -export type GetV1PayItemsResponse = - GetV1PayItemsResponses[keyof GetV1PayItemsResponses]; +export type GetV1EmployeePayslipFilesResponse = + GetV1EmployeePayslipFilesResponses[keyof GetV1EmployeePayslipFilesResponses]; -export type GetV1BenefitOffersCountrySummariesData = { +export type PostV1EmploymentsEmploymentIdInviteData = { body?: never; headers: { /** @@ -23664,12 +23522,67 @@ export type GetV1BenefitOffersCountrySummariesData = { */ Authorization: string; }; + path: { + /** + * Employment ID + */ + employment_id: string; + }; + query?: never; + url: '/v1/employments/{employment_id}/invite'; +}; + +export type PostV1EmploymentsEmploymentIdInviteErrors = { + /** + * Bad Request + */ + 400: BadRequestResponse; + /** + * Conflict + */ + 409: ConflictResponse; + /** + * Unprocessable Entity + */ + 422: UnprocessableEntityResponse; + /** + * Unprocessable Entity + */ + 429: TooManyRequestsResponse; +}; + +export type PostV1EmploymentsEmploymentIdInviteError = + PostV1EmploymentsEmploymentIdInviteErrors[keyof PostV1EmploymentsEmploymentIdInviteErrors]; + +export type PostV1EmploymentsEmploymentIdInviteResponses = { + /** + * Success + */ + 200: SuccessResponse; +}; + +export type PostV1EmploymentsEmploymentIdInviteResponse = + PostV1EmploymentsEmploymentIdInviteResponses[keyof PostV1EmploymentsEmploymentIdInviteResponses]; + +export type PostV1ProbationExtensionsData = { + /** + * ProbationExtension + */ + body: CreateProbationExtensionParams; path?: never; query?: never; - url: '/v1/benefit-offers/country-summaries'; + url: '/v1/probation-extensions'; }; -export type GetV1BenefitOffersCountrySummariesErrors = { +export type PostV1ProbationExtensionsErrors = { + /** + * Bad Request + */ + 400: BadRequestResponse; + /** + * Unauthorized + */ + 401: UnauthorizedResponse; /** * Not Found */ @@ -23680,56 +23593,68 @@ export type GetV1BenefitOffersCountrySummariesErrors = { 422: UnprocessableEntityResponse; }; -export type GetV1BenefitOffersCountrySummariesError = - GetV1BenefitOffersCountrySummariesErrors[keyof GetV1BenefitOffersCountrySummariesErrors]; +export type PostV1ProbationExtensionsError = + PostV1ProbationExtensionsErrors[keyof PostV1ProbationExtensionsErrors]; -export type GetV1BenefitOffersCountrySummariesResponses = { +export type PostV1ProbationExtensionsResponses = { /** * Success */ - 200: CountrySummariesResponse; + 200: ProbationExtensionResponse; }; -export type GetV1BenefitOffersCountrySummariesResponse = - GetV1BenefitOffersCountrySummariesResponses[keyof GetV1BenefitOffersCountrySummariesResponses]; +export type PostV1ProbationExtensionsResponse = + PostV1ProbationExtensionsResponses[keyof PostV1ProbationExtensionsResponses]; -export type GetV1BenefitOffersData = { +export type GetV1ContractorsCorTerminationRequestsData = { body?: never; - headers: { + path?: never; + query?: { /** - * Requires a Company-scoped access token obtained through the Authorization Code flow or the Refresh Token flow. - * - * The refresh token needs to have been obtained through the Authorization Code flow. - * + * Filter termination requests by employment ID. */ - Authorization: string; + employment_id?: UuidSlug; + /** + * Filter termination requests by status. + */ + status?: 'initiated' | 'executed' | 'cancelled'; + /** + * Starts fetching records after the given page + */ + page?: number; + /** + * Number of items per page + */ + page_size?: number; }; - path?: never; - query?: never; - url: '/v1/benefit-offers'; + url: '/v1/contractors/cor-termination-requests'; }; -export type GetV1BenefitOffersErrors = { +export type GetV1ContractorsCorTerminationRequestsErrors = { + /** + * Forbidden + */ + 403: ForbiddenResponse; /** * Not Found */ 404: NotFoundResponse; }; -export type GetV1BenefitOffersError = - GetV1BenefitOffersErrors[keyof GetV1BenefitOffersErrors]; +export type GetV1ContractorsCorTerminationRequestsError = + GetV1ContractorsCorTerminationRequestsErrors[keyof GetV1ContractorsCorTerminationRequestsErrors]; -export type GetV1BenefitOffersResponses = { +export type GetV1ContractorsCorTerminationRequestsResponses = { /** * Success */ - 200: BenefitOfferByEmploymentResponse; + 200: IndexCorTerminationRequestsResponse; }; -export type GetV1BenefitOffersResponse = - GetV1BenefitOffersResponses[keyof GetV1BenefitOffersResponses]; +export type GetV1ContractorsCorTerminationRequestsResponse = + GetV1ContractorsCorTerminationRequestsResponses[keyof GetV1ContractorsCorTerminationRequestsResponses]; -export type PutV1SandboxContractAmendmentsContractAmendmentRequestIdCancelData = +export type PutV1SandboxContractAmendmentsContractAmendmentRequestIdApproveData = { body?: never; path: { @@ -23739,10 +23664,10 @@ export type PutV1SandboxContractAmendmentsContractAmendmentRequestIdCancelData = contract_amendment_request_id: string; }; query?: never; - url: '/v1/sandbox/contract-amendments/{contract_amendment_request_id}/cancel'; + url: '/v1/sandbox/contract-amendments/{contract_amendment_request_id}/approve'; }; -export type PutV1SandboxContractAmendmentsContractAmendmentRequestIdCancelErrors = +export type PutV1SandboxContractAmendmentsContractAmendmentRequestIdApproveErrors = { /** * Bad Request @@ -23766,45 +23691,88 @@ export type PutV1SandboxContractAmendmentsContractAmendmentRequestIdCancelErrors 429: TooManyRequestsResponse; }; -export type PutV1SandboxContractAmendmentsContractAmendmentRequestIdCancelError = - PutV1SandboxContractAmendmentsContractAmendmentRequestIdCancelErrors[keyof PutV1SandboxContractAmendmentsContractAmendmentRequestIdCancelErrors]; +export type PutV1SandboxContractAmendmentsContractAmendmentRequestIdApproveError = + PutV1SandboxContractAmendmentsContractAmendmentRequestIdApproveErrors[keyof PutV1SandboxContractAmendmentsContractAmendmentRequestIdApproveErrors]; -export type PutV1SandboxContractAmendmentsContractAmendmentRequestIdCancelResponses = +export type PutV1SandboxContractAmendmentsContractAmendmentRequestIdApproveResponses = { /** * Success */ - 200: SuccessResponse; + 200: ContractAmendmentResponse; }; -export type PutV1SandboxContractAmendmentsContractAmendmentRequestIdCancelResponse = - PutV1SandboxContractAmendmentsContractAmendmentRequestIdCancelResponses[keyof PutV1SandboxContractAmendmentsContractAmendmentRequestIdCancelResponses]; +export type PutV1SandboxContractAmendmentsContractAmendmentRequestIdApproveResponse = + PutV1SandboxContractAmendmentsContractAmendmentRequestIdApproveResponses[keyof PutV1SandboxContractAmendmentsContractAmendmentRequestIdApproveResponses]; -export type GetV1EmployeeTimeoffData = { - body?: never; - path?: never; - query?: { +export type GetV1CompaniesCompanyIdEmploymentsEmploymentIdOnboardingReservesStatusData = + { + body?: never; + path: { + /** + * Company ID + */ + company_id: UuidSlug; + /** + * Employment ID + */ + employment_id: UuidSlug; + }; + query?: never; + url: '/v1/companies/{company_id}/employments/{employment_id}/onboarding-reserves-status'; + }; + +export type GetV1CompaniesCompanyIdEmploymentsEmploymentIdOnboardingReservesStatusErrors = + { /** - * Starts fetching records after the given page + * Unauthorized */ - page?: number; + 401: UnauthorizedResponse; /** - * Number of items per page + * Forbidden */ - page_size?: number; + 403: ForbiddenResponse; + /** + * Not Found + */ + 404: NotFoundResponse; }; - url: '/v1/employee/timeoff'; + +export type GetV1CompaniesCompanyIdEmploymentsEmploymentIdOnboardingReservesStatusError = + GetV1CompaniesCompanyIdEmploymentsEmploymentIdOnboardingReservesStatusErrors[keyof GetV1CompaniesCompanyIdEmploymentsEmploymentIdOnboardingReservesStatusErrors]; + +export type GetV1CompaniesCompanyIdEmploymentsEmploymentIdOnboardingReservesStatusResponses = + { + /** + * Success + */ + 200: OnboardingReservesStatusResponse; + }; + +export type GetV1CompaniesCompanyIdEmploymentsEmploymentIdOnboardingReservesStatusResponse = + GetV1CompaniesCompanyIdEmploymentsEmploymentIdOnboardingReservesStatusResponses[keyof GetV1CompaniesCompanyIdEmploymentsEmploymentIdOnboardingReservesStatusResponses]; + +export type GetV1ContractorInvoicesIdData = { + body?: never; + path: { + /** + * Resource unique identifier + */ + id: UuidSlug; + }; + query?: never; + url: '/v1/contractor-invoices/{id}'; }; -export type GetV1EmployeeTimeoffErrors = { - /** - * Bad Request - */ - 400: BadRequestResponse; +export type GetV1ContractorInvoicesIdErrors = { /** * Unauthorized */ 401: UnauthorizedResponse; + /** + * Forbidden + */ + 403: ForbiddenResponse; /** * Not Found */ @@ -23812,33 +23780,30 @@ export type GetV1EmployeeTimeoffErrors = { /** * Unprocessable Entity */ - 429: TooManyRequestsResponse; + 422: UnprocessableEntityResponse; }; -export type GetV1EmployeeTimeoffError = - GetV1EmployeeTimeoffErrors[keyof GetV1EmployeeTimeoffErrors]; +export type GetV1ContractorInvoicesIdError = + GetV1ContractorInvoicesIdErrors[keyof GetV1ContractorInvoicesIdErrors]; -export type GetV1EmployeeTimeoffResponses = { +export type GetV1ContractorInvoicesIdResponses = { /** * Success */ - 200: ListTimeoffResponse; + 200: ContractorInvoiceResponse; }; -export type GetV1EmployeeTimeoffResponse = - GetV1EmployeeTimeoffResponses[keyof GetV1EmployeeTimeoffResponses]; +export type GetV1ContractorInvoicesIdResponse = + GetV1ContractorInvoicesIdResponses[keyof GetV1ContractorInvoicesIdResponses]; -export type PostV1EmployeeTimeoffData = { - /** - * Timeoff - */ - body: CreateEmployeeTimeoffParams; +export type GetV1WdGphPayProcessingFeatureData = { + body?: never; path?: never; query?: never; - url: '/v1/employee/timeoff'; + url: '/v1/wd/gph/payProcessingFeature'; }; -export type PostV1EmployeeTimeoffErrors = { +export type GetV1WdGphPayProcessingFeatureErrors = { /** * Bad Request */ @@ -23851,160 +23816,124 @@ export type PostV1EmployeeTimeoffErrors = { * Not Found */ 404: NotFoundResponse; - /** - * Unprocessable Entity - */ - 422: UnprocessableEntityResponse; - /** - * Unprocessable Entity - */ - 429: TooManyRequestsResponse; }; -export type PostV1EmployeeTimeoffError = - PostV1EmployeeTimeoffErrors[keyof PostV1EmployeeTimeoffErrors]; +export type GetV1WdGphPayProcessingFeatureError = + GetV1WdGphPayProcessingFeatureErrors[keyof GetV1WdGphPayProcessingFeatureErrors]; -export type PostV1EmployeeTimeoffResponses = { +export type GetV1WdGphPayProcessingFeatureResponses = { /** - * Created + * Success */ - 201: TimeoffResponse; + 200: PayProcessingFeatureResponse; }; -export type PostV1EmployeeTimeoffResponse = - PostV1EmployeeTimeoffResponses[keyof PostV1EmployeeTimeoffResponses]; +export type GetV1WdGphPayProcessingFeatureResponse = + GetV1WdGphPayProcessingFeatureResponses[keyof GetV1WdGphPayProcessingFeatureResponses]; -export type PatchV2EmploymentsEmploymentId2Data = { - /** - * Employment params - */ - body?: EmploymentV2UpdateParams; - path: { +export type GetV1WdGphPayProgressData = { + body?: never; + headers?: { /** - * Employment ID + * The preferred language of the inquiring user in Workday */ - employment_id: string; + accept_language?: string; }; - query?: never; - url: '/v2/employments/{employment_id}'; + path?: never; + query: { + /** + * The pay group ID for identifying the pay group at the vendor system + */ + payGroupExternalId: string; + /** + * The run type id provided in the paySummary API + */ + runTypeId: string; + /** + * The cycle type id, defaults to the main run if not provided + */ + cycleTypeId?: string; + /** + * The period end date in question, defaults to current period if not provided + */ + periodEndDate?: Date; + }; + url: '/v1/wd/gph/payProgress'; }; -export type PatchV2EmploymentsEmploymentId2Errors = { +export type GetV1WdGphPayProgressErrors = { /** * Bad Request */ 400: BadRequestResponse; /** - * Forbidden - */ - 403: ForbiddenResponse; - /** - * Conflict - */ - 409: ConflictResponse; - /** - * Unprocessable Entity + * Unauthorized */ - 422: UnprocessableEntityResponse; + 401: UnauthorizedResponse; /** - * Unprocessable Entity + * Not Found */ - 429: TooManyRequestsResponse; + 404: NotFoundResponse; }; -export type PatchV2EmploymentsEmploymentId2Error = - PatchV2EmploymentsEmploymentId2Errors[keyof PatchV2EmploymentsEmploymentId2Errors]; +export type GetV1WdGphPayProgressError = + GetV1WdGphPayProgressErrors[keyof GetV1WdGphPayProgressErrors]; -export type PatchV2EmploymentsEmploymentId2Responses = { +export type GetV1WdGphPayProgressResponses = { /** * Success */ - 200: EmploymentResponse; + 200: PayProgressResponse; }; -export type PatchV2EmploymentsEmploymentId2Response = - PatchV2EmploymentsEmploymentId2Responses[keyof PatchV2EmploymentsEmploymentId2Responses]; +export type GetV1WdGphPayProgressResponse = + GetV1WdGphPayProgressResponses[keyof GetV1WdGphPayProgressResponses]; -export type PatchV2EmploymentsEmploymentIdData = { - /** - * Employment params - */ - body?: EmploymentV2UpdateParams; - path: { - /** - * Employment ID - */ - employment_id: string; - }; +export type GetV1CompanyCurrenciesData = { + body?: never; + path?: never; query?: never; - url: '/v2/employments/{employment_id}'; + url: '/v1/company-currencies'; }; -export type PatchV2EmploymentsEmploymentIdErrors = { - /** - * Bad Request - */ - 400: BadRequestResponse; - /** - * Forbidden - */ - 403: ForbiddenResponse; - /** - * Conflict - */ - 409: ConflictResponse; - /** - * Unprocessable Entity - */ - 422: UnprocessableEntityResponse; +export type GetV1CompanyCurrenciesErrors = { /** - * Unprocessable Entity + * Not Found */ - 429: TooManyRequestsResponse; + 404: NotFoundResponse; }; -export type PatchV2EmploymentsEmploymentIdError = - PatchV2EmploymentsEmploymentIdErrors[keyof PatchV2EmploymentsEmploymentIdErrors]; +export type GetV1CompanyCurrenciesError = + GetV1CompanyCurrenciesErrors[keyof GetV1CompanyCurrenciesErrors]; -export type PatchV2EmploymentsEmploymentIdResponses = { +export type GetV1CompanyCurrenciesResponses = { /** * Success */ - 200: EmploymentResponse; + 200: CompanyCurrenciesResponse; }; -export type PatchV2EmploymentsEmploymentIdResponse = - PatchV2EmploymentsEmploymentIdResponses[keyof PatchV2EmploymentsEmploymentIdResponses]; +export type GetV1CompanyCurrenciesResponse = + GetV1CompanyCurrenciesResponses[keyof GetV1CompanyCurrenciesResponses]; -export type PutV2EmploymentsEmploymentIdPersonalDetailsData = { - /** - * Employment personal details params - */ - body?: EmploymentPersonalDetailsParams; +export type GetV1EmploymentsEmploymentIdBenefitOffersSchemaData = { + body?: never; path: { /** - * Employment ID + * Unique identifier of the employment */ - employment_id: string; + employment_id: UuidSlug; }; query?: { /** - * Version of the personal_details form schema + * Version of the form schema */ - personal_details_json_schema_version?: number | 'latest'; + json_schema_version?: number | 'latest'; }; - url: '/v2/employments/{employment_id}/personal-details'; + url: '/v1/employments/{employment_id}/benefit-offers/schema'; }; -export type PutV2EmploymentsEmploymentIdPersonalDetailsErrors = { - /** - * Bad Request - */ - 400: BadRequestResponse; - /** - * Unauthorized - */ - 401: UnauthorizedResponse; +export type GetV1EmploymentsEmploymentIdBenefitOffersSchemaErrors = { /** * Forbidden */ @@ -24013,173 +23942,190 @@ export type PutV2EmploymentsEmploymentIdPersonalDetailsErrors = { * Not Found */ 404: NotFoundResponse; - /** - * Conflict - */ - 409: ConflictResponse; /** * Unprocessable Entity */ 422: UnprocessableEntityResponse; - /** - * Unprocessable Entity - */ - 429: TooManyRequestsResponse; }; -export type PutV2EmploymentsEmploymentIdPersonalDetailsError = - PutV2EmploymentsEmploymentIdPersonalDetailsErrors[keyof PutV2EmploymentsEmploymentIdPersonalDetailsErrors]; +export type GetV1EmploymentsEmploymentIdBenefitOffersSchemaError = + GetV1EmploymentsEmploymentIdBenefitOffersSchemaErrors[keyof GetV1EmploymentsEmploymentIdBenefitOffersSchemaErrors]; -export type PutV2EmploymentsEmploymentIdPersonalDetailsResponses = { +export type GetV1EmploymentsEmploymentIdBenefitOffersSchemaResponses = { /** * Success */ - 200: EmploymentDetailsOnlyResponse; + 200: UnifiedEmploymentsBenefitOffersJsonSchemaResponse; }; -export type PutV2EmploymentsEmploymentIdPersonalDetailsResponse = - PutV2EmploymentsEmploymentIdPersonalDetailsResponses[keyof PutV2EmploymentsEmploymentIdPersonalDetailsResponses]; - -export type GetV1ProbationExtensionsIdData = { - body?: never; - path: { - /** - * Probation Extension Request ID - */ - id: string; - }; - query?: never; - url: '/v1/probation-extensions/{id}'; -}; - -export type GetV1ProbationExtensionsIdErrors = { - /** - * Unauthorized - */ - 401: UnauthorizedResponse; - /** - * Not Found - */ - 404: NotFoundResponse; - /** - * Unprocessable Entity - */ - 422: UnprocessableEntityResponse; -}; - -export type GetV1ProbationExtensionsIdError = - GetV1ProbationExtensionsIdErrors[keyof GetV1ProbationExtensionsIdErrors]; - -export type GetV1ProbationExtensionsIdResponses = { - /** - * Success - */ - 200: ProbationExtensionResponse; -}; - -export type GetV1ProbationExtensionsIdResponse = - GetV1ProbationExtensionsIdResponses[keyof GetV1ProbationExtensionsIdResponses]; +export type GetV1EmploymentsEmploymentIdBenefitOffersSchemaResponse = + GetV1EmploymentsEmploymentIdBenefitOffersSchemaResponses[keyof GetV1EmploymentsEmploymentIdBenefitOffersSchemaResponses]; -export type GetV1PayslipsData = { +export type GetV1ContractorInvoiceSchedulesData = { body?: never; path?: never; query?: { /** - * Employment ID + * Filters contractor invoice schedules by start date greater than or equal to the value. */ - employment_id?: string; + start_date_from?: Date; /** - * Filters by payslips `issued_at` field, after or on the same day than the given date + * Filters contractor invoice schedules by start date less than or equal to the value. */ - start_date?: string; + start_date_to?: Date; /** - * Filters by payslips `issued_at` field, before or or the same day than the given date + * Filters contractor invoice schedules by next invoice date greater than or equal to the value. */ - end_date?: string; + next_invoice_date_from?: Date; /** - * Filters by payslips `expected_payout_date` field, after or on the same day than the given date + * Filters contractor invoice schedules by next invoice date less than or equal to the value. */ - expected_payout_start_date?: string; + next_invoice_date_to?: Date; /** - * Filters by payslips `expected_payout_date` field, before or or the same day than the given date + * Filters contractor invoice schedules by status matching the value. */ - expected_payout_end_date?: string; + status?: ContractorInvoiceScheduleStatus; + /** + * Filters contractor invoice schedules by employment id matching the value. + */ + employment_id?: UuidSlug; + /** + * Filters contractor invoice schedules by periodicity matching the value. + */ + periodicity?: ContractorInvoiceSchedulePeriodicity; + /** + * Filters contractor invoice schedules by currency matching the value. + */ + currency?: string; + /** + * Field to sort by + */ + sort_by?: + | 'number' + | 'total_amount' + | 'next_invoice_at' + | 'start_date' + | 'nr_occurrences'; + /** + * Sort order + */ + order?: 'asc' | 'desc'; /** * Starts fetching records after the given page */ page?: number; /** - * Change the amount of records returned per page, defaults to 20, limited to 100 + * Number of items per page */ page_size?: number; }; - url: '/v1/payslips'; + url: '/v1/contractor-invoice-schedules'; }; -export type GetV1PayslipsErrors = { - /** - * Bad Request - */ - 400: BadRequestResponse; +export type GetV1ContractorInvoiceSchedulesErrors = { /** * Unauthorized */ 401: UnauthorizedResponse; + /** + * Forbidden + */ + 403: ForbiddenResponse; /** * Not Found */ 404: NotFoundResponse; +}; + +export type GetV1ContractorInvoiceSchedulesError = + GetV1ContractorInvoiceSchedulesErrors[keyof GetV1ContractorInvoiceSchedulesErrors]; + +export type GetV1ContractorInvoiceSchedulesResponses = { /** - * Unprocessable Entity + * Success */ - 422: UnprocessableEntityResponse; + 200: ListContractorInvoiceSchedulesResponse; +}; + +export type GetV1ContractorInvoiceSchedulesResponse = + GetV1ContractorInvoiceSchedulesResponses[keyof GetV1ContractorInvoiceSchedulesResponses]; + +export type PostV1ContractorInvoiceSchedulesData = { /** - * Too many requests + * Bulk creation payload */ - 429: TooManyRequestsResponse; + body: BulkContractorInvoiceScheduleCreateParams; + path?: never; + query?: never; + url: '/v1/contractor-invoice-schedules'; }; -export type GetV1PayslipsError = GetV1PayslipsErrors[keyof GetV1PayslipsErrors]; +export type PostV1ContractorInvoiceSchedulesErrors = { + /** + * Forbidden + */ + 403: ForbiddenResponse; + /** + * Not Found + */ + 404: NotFoundResponse; + /** + * BulkContractorInvoiceScheduleCreateResponse + * + * Response containing the lists of succeeded and failed schedules. + */ + 422: { + data: { + failures: Array; + successes: Array; + }; + }; +}; -export type GetV1PayslipsResponses = { +export type PostV1ContractorInvoiceSchedulesError = + PostV1ContractorInvoiceSchedulesErrors[keyof PostV1ContractorInvoiceSchedulesErrors]; + +export type PostV1ContractorInvoiceSchedulesResponses = { /** - * Success + * BulkContractorInvoiceScheduleCreateResponse + * + * Response containing the lists of succeeded and failed schedules. */ - 200: ListPayslipsResponse; + 201: { + data: { + failures: Array; + successes: Array; + }; + }; + /** + * BulkContractorInvoiceScheduleCreateResponse + * + * Response containing the lists of succeeded and failed schedules. + */ + 207: { + data: { + failures: Array; + successes: Array; + }; + }; }; -export type GetV1PayslipsResponse = - GetV1PayslipsResponses[keyof GetV1PayslipsResponses]; +export type PostV1ContractorInvoiceSchedulesResponse = + PostV1ContractorInvoiceSchedulesResponses[keyof PostV1ContractorInvoiceSchedulesResponses]; -export type GetV1ExpensesExpenseIdReceiptsReceiptIdData = { +export type GetV1WorkAuthorizationRequestsIdData = { body?: never; path: { /** - * The expense ID - */ - expense_id: string; - /** - * The receipt ID + * work authorization request ID */ - receipt_id: string; + id: string; }; query?: never; - url: '/v1/expenses/{expense_id}/receipts/{receipt_id}'; + url: '/v1/work-authorization-requests/{id}'; }; -export type GetV1ExpensesExpenseIdReceiptsReceiptIdErrors = { - /** - * Bad Request - */ - 400: BadRequestResponse; - /** - * Unauthorized - */ - 401: UnauthorizedResponse; - /** - * Forbidden - */ - 403: ForbiddenResponse; +export type GetV1WorkAuthorizationRequestsIdErrors = { /** * Not Found */ @@ -24188,40 +24134,37 @@ export type GetV1ExpensesExpenseIdReceiptsReceiptIdErrors = { * Unprocessable Entity */ 422: UnprocessableEntityResponse; - /** - * Unprocessable Entity - */ - 429: TooManyRequestsResponse; }; -export type GetV1ExpensesExpenseIdReceiptsReceiptIdError = - GetV1ExpensesExpenseIdReceiptsReceiptIdErrors[keyof GetV1ExpensesExpenseIdReceiptsReceiptIdErrors]; +export type GetV1WorkAuthorizationRequestsIdError = + GetV1WorkAuthorizationRequestsIdErrors[keyof GetV1WorkAuthorizationRequestsIdErrors]; -export type GetV1ExpensesExpenseIdReceiptsReceiptIdResponses = { +export type GetV1WorkAuthorizationRequestsIdResponses = { /** * Success */ - 200: GenericFile; + 200: WorkAuthorizationRequestResponse; }; -export type GetV1ExpensesExpenseIdReceiptsReceiptIdResponse = - GetV1ExpensesExpenseIdReceiptsReceiptIdResponses[keyof GetV1ExpensesExpenseIdReceiptsReceiptIdResponses]; +export type GetV1WorkAuthorizationRequestsIdResponse = + GetV1WorkAuthorizationRequestsIdResponses[keyof GetV1WorkAuthorizationRequestsIdResponses]; -export type PostAuthOauth2TokenData = { +export type PatchV1WorkAuthorizationRequestsId2Data = { /** - * OAuth2Token + * Work Authorization Request */ - body?: OAuth2TokenParams; - path?: never; + body: UpdateWorkAuthorizationRequestParams; + path: { + /** + * work authorization request ID + */ + id: string; + }; query?: never; - url: '/auth/oauth2/token'; + url: '/v1/work-authorization-requests/{id}'; }; -export type PostAuthOauth2TokenErrors = { - /** - * Bad Request - */ - 400: BadRequestResponse; +export type PatchV1WorkAuthorizationRequestsId2Errors = { /** * Unauthorized */ @@ -24234,59 +24177,37 @@ export type PostAuthOauth2TokenErrors = { * Unprocessable Entity */ 422: UnprocessableEntityResponse; - /** - * Too many requests - */ - 429: TooManyRequestsResponse; }; -export type PostAuthOauth2TokenError = - PostAuthOauth2TokenErrors[keyof PostAuthOauth2TokenErrors]; +export type PatchV1WorkAuthorizationRequestsId2Error = + PatchV1WorkAuthorizationRequestsId2Errors[keyof PatchV1WorkAuthorizationRequestsId2Errors]; -export type PostAuthOauth2TokenResponses = { +export type PatchV1WorkAuthorizationRequestsId2Responses = { /** * Success */ - 200: OAuth2Tokens; + 200: WorkAuthorizationRequestResponse; }; -export type PostAuthOauth2TokenResponse = - PostAuthOauth2TokenResponses[keyof PostAuthOauth2TokenResponses]; +export type PatchV1WorkAuthorizationRequestsId2Response = + PatchV1WorkAuthorizationRequestsId2Responses[keyof PatchV1WorkAuthorizationRequestsId2Responses]; -export type GetV1CountriesCountryCodeLegalEntityFormsFormData = { - body?: never; +export type PatchV1WorkAuthorizationRequestsIdData = { + /** + * Work Authorization Request + */ + body: UpdateWorkAuthorizationRequestParams; path: { /** - * Country code according to ISO 3-digit alphabetic codes - */ - country_code: string; - /** - * Name of the desired form - */ - form: string; - }; - query?: { - /** - * Product type. Default value is global_payroll. - */ - product_type?: 'peo' | 'global_payroll' | 'e2e_payroll'; - /** - * Legal entity id for admistrative_details of e2e payroll products in GBR - */ - legal_entity_id?: UuidSlug; - /** - * Version of the form schema + * work authorization request ID */ - json_schema_version?: number | 'latest'; + id: string; }; - url: '/v1/countries/{country_code}/legal_entity_forms/{form}'; + query?: never; + url: '/v1/work-authorization-requests/{id}'; }; -export type GetV1CountriesCountryCodeLegalEntityFormsFormErrors = { - /** - * Bad Request - */ - 400: BadRequestResponse; +export type PatchV1WorkAuthorizationRequestsIdErrors = { /** * Unauthorized */ @@ -24299,113 +24220,37 @@ export type GetV1CountriesCountryCodeLegalEntityFormsFormErrors = { * Unprocessable Entity */ 422: UnprocessableEntityResponse; - /** - * Unprocessable Entity - */ - 429: TooManyRequestsResponse; }; -export type GetV1CountriesCountryCodeLegalEntityFormsFormError = - GetV1CountriesCountryCodeLegalEntityFormsFormErrors[keyof GetV1CountriesCountryCodeLegalEntityFormsFormErrors]; +export type PatchV1WorkAuthorizationRequestsIdError = + PatchV1WorkAuthorizationRequestsIdErrors[keyof PatchV1WorkAuthorizationRequestsIdErrors]; -export type GetV1CountriesCountryCodeLegalEntityFormsFormResponses = { +export type PatchV1WorkAuthorizationRequestsIdResponses = { /** * Success */ - 200: CountryFormResponse; + 200: WorkAuthorizationRequestResponse; }; -export type GetV1CountriesCountryCodeLegalEntityFormsFormResponse = - GetV1CountriesCountryCodeLegalEntityFormsFormResponses[keyof GetV1CountriesCountryCodeLegalEntityFormsFormResponses]; - -export type PostV1ContractorsEmploymentsEmploymentIdContractorPlusSubscriptionData = - { - /** - * Manage Contractor Plus subscription params - */ - body: ManageContractorPlusSubscriptionOperationsParams; - path: { - /** - * Employment ID - */ - employment_id: string; - }; - query?: never; - url: '/v1/contractors/employments/{employment_id}/contractor-plus-subscription'; - }; - -export type PostV1ContractorsEmploymentsEmploymentIdContractorPlusSubscriptionErrors = - { - /** - * Bad Request - */ - 400: BadRequestResponse; - /** - * Forbidden - */ - 403: ForbiddenResponse; - }; - -export type PostV1ContractorsEmploymentsEmploymentIdContractorPlusSubscriptionError = - PostV1ContractorsEmploymentsEmploymentIdContractorPlusSubscriptionErrors[keyof PostV1ContractorsEmploymentsEmploymentIdContractorPlusSubscriptionErrors]; - -export type PostV1ContractorsEmploymentsEmploymentIdContractorPlusSubscriptionResponses = - { - /** - * Success - */ - 200: SuccessResponse; - }; - -export type PostV1ContractorsEmploymentsEmploymentIdContractorPlusSubscriptionResponse = - PostV1ContractorsEmploymentsEmploymentIdContractorPlusSubscriptionResponses[keyof PostV1ContractorsEmploymentsEmploymentIdContractorPlusSubscriptionResponses]; +export type PatchV1WorkAuthorizationRequestsIdResponse = + PatchV1WorkAuthorizationRequestsIdResponses[keyof PatchV1WorkAuthorizationRequestsIdResponses]; -export type GetV1TimeoffData = { - body?: never; - headers: { - /** - * Requires a Company-scoped access token obtained through the Authorization Code flow or the Refresh Token flow. - * - * The refresh token needs to have been obtained through the Authorization Code flow. - * - */ - Authorization: string; - }; - path?: never; - query?: { - /** - * Only show time off for a specific employment - */ - employment_id?: string; - /** - * Filter time off by its type - */ - timeoff_type?: TimeoffType; - /** - * Filter time off by its status - */ - status?: TimeoffStatus; - /** - * Sort order - */ - order?: 'asc' | 'desc'; - /** - * Field to sort by - */ - sort_by?: 'timeoff_type' | 'status'; - /** - * Starts fetching records after the given page - */ - page?: number; +export type PostV1TimeoffTimeoffIdDeclineData = { + /** + * DeclineTimeoff + */ + body: DeclineTimeoffParams; + path: { /** - * Number of items per page + * Time Off ID */ - page_size?: number; + timeoff_id: string; }; - url: '/v1/timeoff'; + query?: never; + url: '/v1/timeoff/{timeoff_id}/decline'; }; -export type GetV1TimeoffErrors = { +export type PostV1TimeoffTimeoffIdDeclineErrors = { /** * Bad Request */ @@ -24428,93 +24273,78 @@ export type GetV1TimeoffErrors = { 429: TooManyRequestsResponse; }; -export type GetV1TimeoffError = GetV1TimeoffErrors[keyof GetV1TimeoffErrors]; +export type PostV1TimeoffTimeoffIdDeclineError = + PostV1TimeoffTimeoffIdDeclineErrors[keyof PostV1TimeoffTimeoffIdDeclineErrors]; -export type GetV1TimeoffResponses = { +export type PostV1TimeoffTimeoffIdDeclineResponses = { /** * Success */ - 200: ListTimeoffResponse; + 200: TimeoffResponse; }; -export type GetV1TimeoffResponse = - GetV1TimeoffResponses[keyof GetV1TimeoffResponses]; +export type PostV1TimeoffTimeoffIdDeclineResponse = + PostV1TimeoffTimeoffIdDeclineResponses[keyof PostV1TimeoffTimeoffIdDeclineResponses]; -export type PostV1TimeoffData = { - /** - * Timeoff - */ - body: CreateApprovedTimeoffParams; - headers: { +export type GetV1ContractorsSchemasEligibilityQuestionnaireData = { + body?: never; + path?: never; + query: { /** - * Requires a Company-scoped access token obtained through the Authorization Code flow or the Refresh Token flow. - * - * The refresh token needs to have been obtained through the Authorization Code flow. - * + * Type of eligibility questionnaire */ - Authorization: string; + type: 'contractor_of_record'; + /** + * Version of the form schema + */ + json_schema_version?: number | 'latest'; }; - path?: never; - query?: never; - url: '/v1/timeoff'; + url: '/v1/contractors/schemas/eligibility-questionnaire'; }; -export type PostV1TimeoffErrors = { - /** - * Bad Request - */ - 400: BadRequestResponse; +export type GetV1ContractorsSchemasEligibilityQuestionnaireErrors = { /** * Unauthorized */ 401: UnauthorizedResponse; /** - * Not Found + * Forbidden */ - 404: NotFoundResponse; + 403: ForbiddenResponse; /** * Unprocessable Entity */ 422: UnprocessableEntityResponse; - /** - * Unprocessable Entity - */ - 429: TooManyRequestsResponse; }; -export type PostV1TimeoffError = PostV1TimeoffErrors[keyof PostV1TimeoffErrors]; +export type GetV1ContractorsSchemasEligibilityQuestionnaireError = + GetV1ContractorsSchemasEligibilityQuestionnaireErrors[keyof GetV1ContractorsSchemasEligibilityQuestionnaireErrors]; -export type PostV1TimeoffResponses = { +export type GetV1ContractorsSchemasEligibilityQuestionnaireResponses = { /** - * Created + * Success */ - 201: TimeoffResponse; + 200: EligibilityQuestionnaireJsonSchemaResponse; }; -export type PostV1TimeoffResponse = - PostV1TimeoffResponses[keyof PostV1TimeoffResponses]; +export type GetV1ContractorsSchemasEligibilityQuestionnaireResponse = + GetV1ContractorsSchemasEligibilityQuestionnaireResponses[keyof GetV1ContractorsSchemasEligibilityQuestionnaireResponses]; -export type GetV1PayrollRunsData = { - body?: never; +export type PostAuthOauth2TokenData = { + /** + * OAuth2Token + */ + body?: OAuth2TokenParams; path?: never; - query?: { - /** - * Filters payroll runs where period_start or period_end match the given date - */ - payroll_period?: Date; - /** - * Starts fetching records after the given page - */ - page?: number; - /** - * Number of items per page - */ - page_size?: number; - }; - url: '/v1/payroll-runs'; + query?: never; + url: '/oauth2/token'; }; -export type GetV1PayrollRunsErrors = { +export type PostAuthOauth2TokenErrors = { + /** + * Bad Request + */ + 400: BadRequestResponse; /** * Unauthorized */ @@ -24527,27 +24357,28 @@ export type GetV1PayrollRunsErrors = { * Unprocessable Entity */ 422: UnprocessableEntityResponse; + /** + * Too many requests + */ + 429: TooManyRequestsResponse; }; -export type GetV1PayrollRunsError = - GetV1PayrollRunsErrors[keyof GetV1PayrollRunsErrors]; +export type PostAuthOauth2TokenError = + PostAuthOauth2TokenErrors[keyof PostAuthOauth2TokenErrors]; -export type GetV1PayrollRunsResponses = { +export type PostAuthOauth2TokenResponses = { /** * Success */ - 200: ListPayrollRunResponse; + 200: OAuth2Tokens; }; -export type GetV1PayrollRunsResponse = - GetV1PayrollRunsResponses[keyof GetV1PayrollRunsResponses]; +export type PostAuthOauth2TokenResponse = + PostAuthOauth2TokenResponses[keyof PostAuthOauth2TokenResponses]; -export type PostV1OnboardingEmploymentsEmploymentIdPreOnboardingDocumentsData = +export type DeleteV1ContractorsEmploymentsEmploymentIdContractorCorSubscriptionData = { - /** - * FindOrCreatePreOnboardingDocumentParams - */ - body: FindOrCreatePreOnboardingDocumentParams; + body?: never; path: { /** * Employment ID @@ -24555,10 +24386,10 @@ export type PostV1OnboardingEmploymentsEmploymentIdPreOnboardingDocumentsData = employment_id: string; }; query?: never; - url: '/v1/onboarding/employments/{employment_id}/pre-onboarding-documents'; + url: '/v1/contractors/employments/{employment_id}/contractor-cor-subscription'; }; -export type PostV1OnboardingEmploymentsEmploymentIdPreOnboardingDocumentsErrors = +export type DeleteV1ContractorsEmploymentsEmploymentIdContractorCorSubscriptionErrors = { /** * Unauthorized @@ -24578,33 +24409,85 @@ export type PostV1OnboardingEmploymentsEmploymentIdPreOnboardingDocumentsErrors 422: UnprocessableEntityResponse; }; -export type PostV1OnboardingEmploymentsEmploymentIdPreOnboardingDocumentsError = - PostV1OnboardingEmploymentsEmploymentIdPreOnboardingDocumentsErrors[keyof PostV1OnboardingEmploymentsEmploymentIdPreOnboardingDocumentsErrors]; +export type DeleteV1ContractorsEmploymentsEmploymentIdContractorCorSubscriptionError = + DeleteV1ContractorsEmploymentsEmploymentIdContractorCorSubscriptionErrors[keyof DeleteV1ContractorsEmploymentsEmploymentIdContractorCorSubscriptionErrors]; -export type PostV1OnboardingEmploymentsEmploymentIdPreOnboardingDocumentsResponses = +export type DeleteV1ContractorsEmploymentsEmploymentIdContractorCorSubscriptionResponses = { /** - * Success + * No Content */ - 200: CreatePreOnboardingDocumentResponse; + 204: unknown; }; -export type PostV1OnboardingEmploymentsEmploymentIdPreOnboardingDocumentsResponse = - PostV1OnboardingEmploymentsEmploymentIdPreOnboardingDocumentsResponses[keyof PostV1OnboardingEmploymentsEmploymentIdPreOnboardingDocumentsResponses]; +export type PostV1ContractorsEmploymentsEmploymentIdContractorCorSubscriptionData = + { + body?: never; + path: { + /** + * Employment ID + */ + employment_id: string; + }; + query?: never; + url: '/v1/contractors/employments/{employment_id}/contractor-cor-subscription'; + }; -export type GetV1CompaniesCompanyIdActionsData = { - body?: never; +export type PostV1ContractorsEmploymentsEmploymentIdContractorCorSubscriptionErrors = + { + /** + * Bad Request + */ + 400: BadRequestResponse; + /** + * Forbidden + */ + 403: ForbiddenResponse; + /** + * Not Found + */ + 404: NotFoundResponse; + /** + * Unprocessable Entity + */ + 422: UnprocessableEntityResponse; + }; + +export type PostV1ContractorsEmploymentsEmploymentIdContractorCorSubscriptionError = + PostV1ContractorsEmploymentsEmploymentIdContractorCorSubscriptionErrors[keyof PostV1ContractorsEmploymentsEmploymentIdContractorCorSubscriptionErrors]; + +export type PostV1ContractorsEmploymentsEmploymentIdContractorCorSubscriptionResponses = + { + /** + * Created + */ + 201: SuccessResponse; + }; + +export type PostV1ContractorsEmploymentsEmploymentIdContractorCorSubscriptionResponse = + PostV1ContractorsEmploymentsEmploymentIdContractorCorSubscriptionResponses[keyof PostV1ContractorsEmploymentsEmploymentIdContractorCorSubscriptionResponses]; + +export type PutV2EmploymentsEmploymentIdPersonalDetailsData = { + /** + * Employment personal details params + */ + body?: EmploymentPersonalDetailsParams; path: { /** - * Company ID + * Employment ID */ - company_id: string; + employment_id: string; }; - query?: never; - url: '/v1/companies/{company_id}/actions'; + query?: { + /** + * Version of the personal_details form schema + */ + personal_details_json_schema_version?: number | 'latest'; + }; + url: '/v2/employments/{employment_id}/personal_details'; }; -export type GetV1CompaniesCompanyIdActionsErrors = { +export type PutV2EmploymentsEmploymentIdPersonalDetailsErrors = { /** * Bad Request */ @@ -24613,74 +24496,42 @@ export type GetV1CompaniesCompanyIdActionsErrors = { * Unauthorized */ 401: UnauthorizedResponse; + /** + * Forbidden + */ + 403: ForbiddenResponse; /** * Not Found */ 404: NotFoundResponse; + /** + * Conflict + */ + 409: ConflictResponse; /** * Unprocessable Entity */ 422: UnprocessableEntityResponse; /** - * Too many requests + * Unprocessable Entity */ 429: TooManyRequestsResponse; }; -export type GetV1CompaniesCompanyIdActionsError = - GetV1CompaniesCompanyIdActionsErrors[keyof GetV1CompaniesCompanyIdActionsErrors]; - -export type GetV1CompaniesCompanyIdActionsResponses = { - /** - * Success - */ - 200: CompanyActionsResponse; -}; - -export type GetV1CompaniesCompanyIdActionsResponse = - GetV1CompaniesCompanyIdActionsResponses[keyof GetV1CompaniesCompanyIdActionsResponses]; - -export type GetV1ScimV2GroupsIdData = { - body?: never; - path: { - /** - * Group ID (slug) - */ - id: string; - }; - query?: never; - url: '/v1/scim/v2/Groups/{id}'; -}; - -export type GetV1ScimV2GroupsIdErrors = { - /** - * Unauthorized - */ - 401: IntegrationsScimErrorResponse; - /** - * Forbidden - */ - 403: IntegrationsScimErrorResponse; - /** - * Not Found - */ - 404: IntegrationsScimErrorResponse; -}; - -export type GetV1ScimV2GroupsIdError = - GetV1ScimV2GroupsIdErrors[keyof GetV1ScimV2GroupsIdErrors]; +export type PutV2EmploymentsEmploymentIdPersonalDetailsError = + PutV2EmploymentsEmploymentIdPersonalDetailsErrors[keyof PutV2EmploymentsEmploymentIdPersonalDetailsErrors]; -export type GetV1ScimV2GroupsIdResponses = { +export type PutV2EmploymentsEmploymentIdPersonalDetailsResponses = { /** * Success */ - 200: IntegrationsScimGroup; + 200: EmploymentDetailsOnlyResponse; }; -export type GetV1ScimV2GroupsIdResponse = - GetV1ScimV2GroupsIdResponses[keyof GetV1ScimV2GroupsIdResponses]; +export type PutV2EmploymentsEmploymentIdPersonalDetailsResponse = + PutV2EmploymentsEmploymentIdPersonalDetailsResponses[keyof PutV2EmploymentsEmploymentIdPersonalDetailsResponses]; -export type GetV1EmploymentContractsData = { +export type GetV1ContractAmendmentsIdData = { body?: never; headers: { /** @@ -24691,29 +24542,21 @@ export type GetV1EmploymentContractsData = { */ Authorization: string; }; - path?: never; - query: { - /** - * Employment ID - */ - employment_id: string; + path: { /** - * Only Active + * Contract amendment request ID */ - only_active?: boolean; + id: string; }; - url: '/v1/employment-contracts'; + query?: never; + url: '/v1/contract-amendments/{id}'; }; -export type GetV1EmploymentContractsErrors = { +export type GetV1ContractAmendmentsIdErrors = { /** * Unauthorized */ 401: UnauthorizedResponse; - /** - * Forbidden - */ - 403: ForbiddenResponse; /** * Not Found */ @@ -24724,30 +24567,32 @@ export type GetV1EmploymentContractsErrors = { 422: UnprocessableEntityResponse; }; -export type GetV1EmploymentContractsError = - GetV1EmploymentContractsErrors[keyof GetV1EmploymentContractsErrors]; +export type GetV1ContractAmendmentsIdError = + GetV1ContractAmendmentsIdErrors[keyof GetV1ContractAmendmentsIdErrors]; -export type GetV1EmploymentContractsResponses = { +export type GetV1ContractAmendmentsIdResponses = { /** * Success */ - 200: ListEmploymentContractResponse; + 200: ContractAmendmentResponse; }; -export type GetV1EmploymentContractsResponse = - GetV1EmploymentContractsResponses[keyof GetV1EmploymentContractsResponses]; +export type GetV1ContractAmendmentsIdResponse = + GetV1ContractAmendmentsIdResponses[keyof GetV1ContractAmendmentsIdResponses]; -export type PostV1CurrencyConverterEffective2Data = { - /** - * Convert currency parameters - */ - body: ConvertCurrencyParams; - path?: never; +export type PostV1IdentityVerificationEmploymentIdDeclineData = { + body?: never; + path: { + /** + * Employment ID + */ + employment_id: string; + }; query?: never; - url: '/v1/currency-converter'; + url: '/v1/identity-verification/{employment_id}/decline'; }; -export type PostV1CurrencyConverterEffective2Errors = { +export type PostV1IdentityVerificationEmploymentIdDeclineErrors = { /** * Unauthorized */ @@ -24762,78 +24607,151 @@ export type PostV1CurrencyConverterEffective2Errors = { 422: UnprocessableEntityResponse; }; -export type PostV1CurrencyConverterEffective2Error = - PostV1CurrencyConverterEffective2Errors[keyof PostV1CurrencyConverterEffective2Errors]; +export type PostV1IdentityVerificationEmploymentIdDeclineError = + PostV1IdentityVerificationEmploymentIdDeclineErrors[keyof PostV1IdentityVerificationEmploymentIdDeclineErrors]; -export type PostV1CurrencyConverterEffective2Responses = { +export type PostV1IdentityVerificationEmploymentIdDeclineResponses = { /** * Success */ - 200: ConvertCurrencyResponse; + 200: SuccessResponse; }; -export type PostV1CurrencyConverterEffective2Response = - PostV1CurrencyConverterEffective2Responses[keyof PostV1CurrencyConverterEffective2Responses]; +export type PostV1IdentityVerificationEmploymentIdDeclineResponse = + PostV1IdentityVerificationEmploymentIdDeclineResponses[keyof PostV1IdentityVerificationEmploymentIdDeclineResponses]; -export type GetV1CompaniesData = { +export type GetV1EmployeeExpenseCategoriesData = { body?: never; - headers: { - /** - * Requires a client credentials access token obtained through the Client Credentials flow or the Refresh Token flow. - * - * The refresh token needs to have been obtained through the Client Credentials flow. - * - */ - Authorization: string; - }; path?: never; query?: { /** - * External ID + * Include parent (non-selectable) categories in addition to selectable leaves */ - external_id?: string; + include_parents?: boolean; + /** + * Expense ID (slug) whose category should be included in the result, even if it is not selectable by default + */ + expense_id?: string; }; - url: '/v1/companies'; + url: '/v1/employee/expense-categories'; }; -export type GetV1CompaniesErrors = { +export type GetV1EmployeeExpenseCategoriesErrors = { /** * Unauthorized */ 401: UnauthorizedResponse; /** - * Not Found + * Forbidden */ - 404: NotFoundResponse; + 403: ForbiddenResponse; /** - * Unprocessable Entity + * Not Found */ - 422: UnprocessableEntityResponse; + 404: NotFoundResponse; }; -export type GetV1CompaniesError = - GetV1CompaniesErrors[keyof GetV1CompaniesErrors]; +export type GetV1EmployeeExpenseCategoriesError = + GetV1EmployeeExpenseCategoriesErrors[keyof GetV1EmployeeExpenseCategoriesErrors]; -export type GetV1CompaniesResponses = { +export type GetV1EmployeeExpenseCategoriesResponses = { /** * Success */ - 200: CompaniesResponse; + 200: ListExpenseCategoriesResponse; }; -export type GetV1CompaniesResponse = - GetV1CompaniesResponses[keyof GetV1CompaniesResponses]; +export type GetV1EmployeeExpenseCategoriesResponse = + GetV1EmployeeExpenseCategoriesResponses[keyof GetV1EmployeeExpenseCategoriesResponses]; -export type PostV1CompaniesData = { +export type PostV1CostCalculatorEstimationCsvData = { /** - * Create Company params + * Estimate params */ - body?: CreateCompanyParams; + body?: CostCalculatorEstimateParams; + path?: never; + query?: never; + url: '/v1/cost-calculator/estimation-csv'; +}; + +export type PostV1CostCalculatorEstimationCsvErrors = { + /** + * Not Found + */ + 404: NotFoundResponse; + /** + * Unprocessable Entity + */ + 422: UnprocessableEntityResponse; +}; + +export type PostV1CostCalculatorEstimationCsvError = + PostV1CostCalculatorEstimationCsvErrors[keyof PostV1CostCalculatorEstimationCsvErrors]; + +export type PostV1CostCalculatorEstimationCsvResponses = { + /** + * Success + */ + 200: CostCalculatorEstimateCsvResponse; +}; + +export type PostV1CostCalculatorEstimationCsvResponse = + PostV1CostCalculatorEstimationCsvResponses[keyof PostV1CostCalculatorEstimationCsvResponses]; + +export type GetV1OnboardingEmploymentsEmploymentIdPreOnboardingDocumentsIdData = + { + body?: never; + path: { + /** + * Employment ID + */ + employment_id: string; + /** + * Pre-onboarding document ID + */ + id: string; + }; + query?: never; + url: '/v1/onboarding/employments/{employment_id}/pre-onboarding-documents/{id}'; + }; + +export type GetV1OnboardingEmploymentsEmploymentIdPreOnboardingDocumentsIdErrors = + { + /** + * Unauthorized + */ + 401: UnauthorizedResponse; + /** + * Forbidden + */ + 403: ForbiddenResponse; + /** + * Not Found + */ + 404: NotFoundResponse; + }; + +export type GetV1OnboardingEmploymentsEmploymentIdPreOnboardingDocumentsIdError = + GetV1OnboardingEmploymentsEmploymentIdPreOnboardingDocumentsIdErrors[keyof GetV1OnboardingEmploymentsEmploymentIdPreOnboardingDocumentsIdErrors]; + +export type GetV1OnboardingEmploymentsEmploymentIdPreOnboardingDocumentsIdResponses = + { + /** + * Success + */ + 200: ShowPreOnboardingDocumentResponse; + }; + +export type GetV1OnboardingEmploymentsEmploymentIdPreOnboardingDocumentsIdResponse = + GetV1OnboardingEmploymentsEmploymentIdPreOnboardingDocumentsIdResponses[keyof GetV1OnboardingEmploymentsEmploymentIdPreOnboardingDocumentsIdResponses]; + +export type GetV1BillingDocumentsData = { + body?: never; headers: { /** - * Requires a client credentials access token obtained through the Client Credentials flow or the Refresh Token flow. + * Requires a Company-scoped access token obtained through the Authorization Code flow or the Refresh Token flow. * - * The refresh token needs to have been obtained through the Client Credentials flow. + * The refresh token needs to have been obtained through the Authorization Code flow. * */ Authorization: string; @@ -24841,94 +24759,76 @@ export type PostV1CompaniesData = { path?: never; query?: { /** - * Version of the address_details form schema - */ - address_details_json_schema_version?: number | 'latest'; - /** - * Version of the bank_account_details form schema - */ - bank_account_details_json_schema_version?: number | 'latest'; - /** - * Complementary action(s) to perform when creating a company: - * - * - `get_oauth_access_tokens` returns the user's access and refresh tokens - * - `send_create_password_email ` sends a reset password token to the company owner's email so they can log in using Remote UI (not needed if integration plans to use SSO only) - * - * If `action` contains `send_create_password_email` you can redirect the user to [https://employ.remote.com/api-integration-new-password-send](https://employ.remote.com/api-integration-new-password-send) - * + * The month for the billing documents (in ISO-8601 format) */ - action?: string; + period?: string; /** - * Whether the request should be performed async - * + * Starts fetching records after the given page */ - async?: boolean; + page?: number; /** - * Scope of the access token - * + * Number of items per page */ - scope?: string; + page_size?: number; }; - url: '/v1/companies'; + url: '/v1/billing-documents'; }; -export type PostV1CompaniesErrors = { - /** - * Bad Request - */ - 400: BadRequestResponse; +export type GetV1BillingDocumentsErrors = { /** - * Forbidden + * Unauthorized */ - 403: ForbiddenResponse; + 401: UnauthorizedResponse; /** - * Conflict + * Not Found */ - 409: CompanyCreationConflictErrorResponse; + 404: NotFoundResponse; /** * Unprocessable Entity */ 422: UnprocessableEntityResponse; - /** - * Unprocessable Entity - */ - 429: TooManyRequestsResponse; }; -export type PostV1CompaniesError = - PostV1CompaniesErrors[keyof PostV1CompaniesErrors]; +export type GetV1BillingDocumentsError = + GetV1BillingDocumentsErrors[keyof GetV1BillingDocumentsErrors]; -export type PostV1CompaniesResponses = { +export type GetV1BillingDocumentsResponses = { /** - * Created + * Success */ - 201: CompanyCreationResponse; + 200: BillingDocumentsResponse; }; -export type PostV1CompaniesResponse = - PostV1CompaniesResponses[keyof PostV1CompaniesResponses]; +export type GetV1BillingDocumentsResponse = + GetV1BillingDocumentsResponses[keyof GetV1BillingDocumentsResponses]; -export type PutV2EmploymentsEmploymentIdBillingAddressDetailsData = { - /** - * Employment billing address details params - */ - body?: EmploymentBillingAddressDetailsParams; +export type GetV1BillingDocumentsBillingDocumentIdData = { + body?: never; + headers: { + /** + * Requires a Company-scoped access token obtained through the Authorization Code flow or the Refresh Token flow. + * + * The refresh token needs to have been obtained through the Authorization Code flow. + * + */ + Authorization: string; + }; path: { /** - * Employment ID + * The billing document's ID */ - employment_id: string; + billing_document_id: string; }; query?: { /** - * Version of the billing_address_details form schema + * When true, includes billing document items whose type is not part of the standard set for the invoice type. */ - billing_address_details_json_schema_version?: number | 'latest'; + include_unrecognized_types?: boolean; }; - url: '/v2/employments/{employment_id}/billing-address-details'; + url: '/v1/billing-documents/{billing_document_id}'; }; -export type PutV2EmploymentsEmploymentIdBillingAddressDetailsErrors = { +export type GetV1BillingDocumentsBillingDocumentIdErrors = { /** * Bad Request */ @@ -24937,18 +24837,10 @@ export type PutV2EmploymentsEmploymentIdBillingAddressDetailsErrors = { * Unauthorized */ 401: UnauthorizedResponse; - /** - * Forbidden - */ - 403: ForbiddenResponse; /** * Not Found */ 404: NotFoundResponse; - /** - * Conflict - */ - 409: ConflictResponse; /** * Unprocessable Entity */ @@ -24959,81 +24851,111 @@ export type PutV2EmploymentsEmploymentIdBillingAddressDetailsErrors = { 429: TooManyRequestsResponse; }; -export type PutV2EmploymentsEmploymentIdBillingAddressDetailsError = - PutV2EmploymentsEmploymentIdBillingAddressDetailsErrors[keyof PutV2EmploymentsEmploymentIdBillingAddressDetailsErrors]; +export type GetV1BillingDocumentsBillingDocumentIdError = + GetV1BillingDocumentsBillingDocumentIdErrors[keyof GetV1BillingDocumentsBillingDocumentIdErrors]; -export type PutV2EmploymentsEmploymentIdBillingAddressDetailsResponses = { +export type GetV1BillingDocumentsBillingDocumentIdResponses = { /** * Success */ - 200: EmploymentDetailsOnlyResponse; + 200: BillingDocumentResponse; }; -export type PutV2EmploymentsEmploymentIdBillingAddressDetailsResponse = - PutV2EmploymentsEmploymentIdBillingAddressDetailsResponses[keyof PutV2EmploymentsEmploymentIdBillingAddressDetailsResponses]; +export type GetV1BillingDocumentsBillingDocumentIdResponse = + GetV1BillingDocumentsBillingDocumentIdResponses[keyof GetV1BillingDocumentsBillingDocumentIdResponses]; -export type PostV1BulkEmploymentJobsData = { - /** - * Bulk employment params - */ - body?: BulkEmploymentCreateParams; +export type GetV1EmployeeDocumentsData = { + body?: never; path?: never; - query?: never; - url: '/v1/bulk-employment-jobs'; + query?: { + /** + * Starts fetching records after the given page + */ + page?: number; + /** + * Number of items per page + */ + page_size?: number; + /** + * Filter documents by their description or file name, accepts full and partial case insensitive matches + */ + name?: string; + /** + * Filters the results that were uploaded on or after a given date + */ + inserted_after?: Date; + /** + * Filters the results that were uploaded before a given date + */ + inserted_before?: Date; + /** + * Field to sort by + */ + sort_by?: + | 'description' + | 'document_source' + | 'inserted_at' + | 'name' + | 'type' + | 'uploaded_by_role' + | 'related_to' + | 'sub_type' + | 'uploaded_by'; + /** + * Sort order + */ + order?: 'asc' | 'desc'; + }; + url: '/v1/employee/documents'; }; -export type PostV1BulkEmploymentJobsErrors = { - /** - * Bad Request - */ - 400: BadRequestResponse; +export type GetV1EmployeeDocumentsErrors = { /** * Forbidden */ 403: ForbiddenResponse; /** - * Unprocessable Entity - */ - 422: UnprocessableEntityResponse; - /** - * Unprocessable Entity + * Not Found */ - 429: TooManyRequestsResponse; + 404: NotFoundResponse; }; -export type PostV1BulkEmploymentJobsError = - PostV1BulkEmploymentJobsErrors[keyof PostV1BulkEmploymentJobsErrors]; +export type GetV1EmployeeDocumentsError = + GetV1EmployeeDocumentsErrors[keyof GetV1EmployeeDocumentsErrors]; -export type PostV1BulkEmploymentJobsResponses = { +export type GetV1EmployeeDocumentsResponses = { /** - * Accepted + * Success */ - 202: BulkEmploymentImportJobResponse; + 200: ListDocumentsResponse; }; -export type PostV1BulkEmploymentJobsResponse = - PostV1BulkEmploymentJobsResponses[keyof PostV1BulkEmploymentJobsResponses]; +export type GetV1EmployeeDocumentsResponse = + GetV1EmployeeDocumentsResponses[keyof GetV1EmployeeDocumentsResponses]; -export type PostV1TimesheetsTimesheetIdSendBackData = { +export type PostV1EmployeeDocumentsData = { /** - * SendBackTimesheetParams + * File */ - body?: SendBackTimesheetParams; - path: { - /** - * Timesheet ID - */ - timesheet_id: string; - }; + body: EmployeeFileParams; + path?: never; query?: never; - url: '/v1/timesheets/{timesheet_id}/send-back'; + url: '/v1/employee/documents'; }; -export type PostV1TimesheetsTimesheetIdSendBackErrors = { +export type PostV1EmployeeDocumentsErrors = { + /** + * Bad Request + */ + 400: BadRequestResponse; /** * Unauthorized */ 401: UnauthorizedResponse; + /** + * Forbidden + */ + 403: ForbiddenResponse; /** * Not Found */ @@ -25044,41 +24966,36 @@ export type PostV1TimesheetsTimesheetIdSendBackErrors = { 422: UnprocessableEntityResponse; }; -export type PostV1TimesheetsTimesheetIdSendBackError = - PostV1TimesheetsTimesheetIdSendBackErrors[keyof PostV1TimesheetsTimesheetIdSendBackErrors]; +export type PostV1EmployeeDocumentsError = + PostV1EmployeeDocumentsErrors[keyof PostV1EmployeeDocumentsErrors]; -export type PostV1TimesheetsTimesheetIdSendBackResponses = { +export type PostV1EmployeeDocumentsResponses = { /** - * Success + * Created */ - 200: SentBackTimesheetResponse; + 201: UploadFileResponse; }; -export type PostV1TimesheetsTimesheetIdSendBackResponse = - PostV1TimesheetsTimesheetIdSendBackResponses[keyof PostV1TimesheetsTimesheetIdSendBackResponses]; +export type PostV1EmployeeDocumentsResponse = + PostV1EmployeeDocumentsResponses[keyof PostV1EmployeeDocumentsResponses]; -export type DeleteV1CompanyManagersUserIdData = { +export type GetV1EmployeeTimeoffData = { body?: never; - headers: { + path?: never; + query?: { /** - * Requires a Company-scoped access token obtained through the Authorization Code flow or the Refresh Token flow. - * - * The refresh token needs to have been obtained through the Authorization Code flow. - * + * Starts fetching records after the given page */ - Authorization: string; - }; - path: { + page?: number; /** - * User ID + * Number of items per page */ - user_id: string; + page_size?: number; }; - query?: never; - url: '/v1/company-managers/{user_id}'; + url: '/v1/employee/timeoff'; }; -export type DeleteV1CompanyManagersUserIdErrors = { +export type GetV1EmployeeTimeoffErrors = { /** * Bad Request */ @@ -25094,39 +25011,33 @@ export type DeleteV1CompanyManagersUserIdErrors = { /** * Unprocessable Entity */ - 422: UnprocessableEntityResponse; - /** - * Too many requests - */ 429: TooManyRequestsResponse; }; -export type DeleteV1CompanyManagersUserIdError = - DeleteV1CompanyManagersUserIdErrors[keyof DeleteV1CompanyManagersUserIdErrors]; +export type GetV1EmployeeTimeoffError = + GetV1EmployeeTimeoffErrors[keyof GetV1EmployeeTimeoffErrors]; -export type DeleteV1CompanyManagersUserIdResponses = { +export type GetV1EmployeeTimeoffResponses = { /** * Success */ - 200: SuccessResponse; + 200: ListTimeoffResponse; }; -export type DeleteV1CompanyManagersUserIdResponse = - DeleteV1CompanyManagersUserIdResponses[keyof DeleteV1CompanyManagersUserIdResponses]; +export type GetV1EmployeeTimeoffResponse = + GetV1EmployeeTimeoffResponses[keyof GetV1EmployeeTimeoffResponses]; -export type GetV1CompanyManagersUserIdData = { - body?: never; - path: { - /** - * User ID - */ - user_id: string; - }; +export type PostV1EmployeeTimeoffData = { + /** + * Timeoff + */ + body: CreateEmployeeTimeoffParams; + path?: never; query?: never; - url: '/v1/company-managers/{user_id}'; + url: '/v1/employee/timeoff'; }; -export type GetV1CompanyManagersUserIdErrors = { +export type PostV1EmployeeTimeoffErrors = { /** * Bad Request */ @@ -25144,23 +25055,23 @@ export type GetV1CompanyManagersUserIdErrors = { */ 422: UnprocessableEntityResponse; /** - * Too many requests + * Unprocessable Entity */ 429: TooManyRequestsResponse; }; -export type GetV1CompanyManagersUserIdError = - GetV1CompanyManagersUserIdErrors[keyof GetV1CompanyManagersUserIdErrors]; +export type PostV1EmployeeTimeoffError = + PostV1EmployeeTimeoffErrors[keyof PostV1EmployeeTimeoffErrors]; -export type GetV1CompanyManagersUserIdResponses = { +export type PostV1EmployeeTimeoffResponses = { /** - * Success + * Created */ - 200: CompanyManagerResponse; + 201: TimeoffResponse; }; -export type GetV1CompanyManagersUserIdResponse = - GetV1CompanyManagersUserIdResponses[keyof GetV1CompanyManagersUserIdResponses]; +export type PostV1EmployeeTimeoffResponse = + PostV1EmployeeTimeoffResponses[keyof PostV1EmployeeTimeoffResponses]; export type PutV1EmploymentsEmploymentIdPersonalDetailsData = { /** @@ -25174,7 +25085,7 @@ export type PutV1EmploymentsEmploymentIdPersonalDetailsData = { employment_id: string; }; query?: never; - url: '/v1/employments/{employment_id}/personal-details'; + url: '/v1/employments/{employment_id}/personal_details'; }; export type PutV1EmploymentsEmploymentIdPersonalDetailsErrors = { @@ -25213,294 +25124,596 @@ export type PutV1EmploymentsEmploymentIdPersonalDetailsResponses = { export type PutV1EmploymentsEmploymentIdPersonalDetailsResponse = PutV1EmploymentsEmploymentIdPersonalDetailsResponses[keyof PutV1EmploymentsEmploymentIdPersonalDetailsResponses]; -export type GetV1EmployeeExpensesData = { +export type GetV1ProbationExtensionsIdData = { body?: never; - path?: never; + path: { + /** + * Probation Extension Request ID + */ + id: string; + }; query?: never; - url: '/v1/employee/expenses'; + url: '/v1/probation-extensions/{id}'; }; -export type GetV1EmployeeExpensesErrors = { +export type GetV1ProbationExtensionsIdErrors = { /** * Unauthorized */ 401: UnauthorizedResponse; - /** - * Forbidden - */ - 403: ForbiddenResponse; /** * Not Found */ 404: NotFoundResponse; + /** + * Unprocessable Entity + */ + 422: UnprocessableEntityResponse; }; -export type GetV1EmployeeExpensesError = - GetV1EmployeeExpensesErrors[keyof GetV1EmployeeExpensesErrors]; +export type GetV1ProbationExtensionsIdError = + GetV1ProbationExtensionsIdErrors[keyof GetV1ProbationExtensionsIdErrors]; -export type GetV1EmployeeExpensesResponses = { +export type GetV1ProbationExtensionsIdResponses = { /** * Success */ - 200: SuccessResponse; + 200: ProbationExtensionResponse; }; -export type GetV1EmployeeExpensesResponse = - GetV1EmployeeExpensesResponses[keyof GetV1EmployeeExpensesResponses]; +export type GetV1ProbationExtensionsIdResponse = + GetV1ProbationExtensionsIdResponses[keyof GetV1ProbationExtensionsIdResponses]; -export type PostV1EmployeeExpensesData = { - /** - * Expense params - */ - body?: ParamsToCreateEmployeeExpense; - path?: never; +export type GetV1FilesIdData = { + body?: never; + path: { + /** + * File ID + */ + id: string; + }; query?: never; - url: '/v1/employee/expenses'; + url: '/v1/files/{id}'; }; -export type PostV1EmployeeExpensesErrors = { - /** - * Bad Request - */ - 400: BadRequestResponse; +export type GetV1FilesIdErrors = { /** * Unauthorized */ 401: UnauthorizedResponse; /** - * Forbidden + * Not Found */ - 403: ForbiddenResponse; + 404: NotFoundResponse; /** * Unprocessable Entity */ 422: UnprocessableEntityResponse; }; -export type PostV1EmployeeExpensesError = - PostV1EmployeeExpensesErrors[keyof PostV1EmployeeExpensesErrors]; +export type GetV1FilesIdError = GetV1FilesIdErrors[keyof GetV1FilesIdErrors]; -export type PostV1EmployeeExpensesResponses = { +export type GetV1FilesIdResponses = { /** - * Created + * Success */ - 201: SuccessResponse; + 200: DownloadFileResponse; }; -export type PostV1EmployeeExpensesResponse = - PostV1EmployeeExpensesResponses[keyof PostV1EmployeeExpensesResponses]; - -export type DeleteV1ContractorsEmploymentsEmploymentIdContractorCorSubscriptionData = - { - body?: never; - path: { - /** - * Employment ID - */ - employment_id: string; - }; - query?: never; - url: '/v1/contractors/employments/{employment_id}/contractor-cor-subscription'; - }; +export type GetV1FilesIdResponse = + GetV1FilesIdResponses[keyof GetV1FilesIdResponses]; -export type DeleteV1ContractorsEmploymentsEmploymentIdContractorCorSubscriptionErrors = - { +export type GetV1CompanyDepartmentsData = { + body?: never; + path?: never; + query: { /** - * Unauthorized + * Company ID */ - 401: UnauthorizedResponse; + company_id: string; /** - * Forbidden + * Paginate option. Default: true. When true, paginates response; otherwise, does not. */ - 403: ForbiddenResponse; + paginate?: boolean; /** - * Not Found + * Starts fetching records after the given page */ - 404: NotFoundResponse; + page?: number; /** - * Unprocessable Entity + * Number of items per page */ - 422: UnprocessableEntityResponse; + page_size?: number; }; + url: '/v1/company-departments'; +}; -export type DeleteV1ContractorsEmploymentsEmploymentIdContractorCorSubscriptionError = - DeleteV1ContractorsEmploymentsEmploymentIdContractorCorSubscriptionErrors[keyof DeleteV1ContractorsEmploymentsEmploymentIdContractorCorSubscriptionErrors]; - -export type DeleteV1ContractorsEmploymentsEmploymentIdContractorCorSubscriptionResponses = - { - /** - * No Content - */ - 204: unknown; - }; +export type GetV1CompanyDepartmentsErrors = { + /** + * Not Found + */ + 404: NotFoundResponse; + /** + * Unprocessable Entity + */ + 422: UnprocessableEntityResponse; +}; -export type PostV1ContractorsEmploymentsEmploymentIdContractorCorSubscriptionData = - { - body?: never; - path: { - /** - * Employment ID - */ - employment_id: string; - }; - query?: never; - url: '/v1/contractors/employments/{employment_id}/contractor-cor-subscription'; - }; +export type GetV1CompanyDepartmentsError = + GetV1CompanyDepartmentsErrors[keyof GetV1CompanyDepartmentsErrors]; -export type PostV1ContractorsEmploymentsEmploymentIdContractorCorSubscriptionErrors = - { - /** - * Bad Request - */ - 400: BadRequestResponse; +export type GetV1CompanyDepartmentsResponses = { + /** + * Success + */ + 200: ListCompanyDepartmentsPaginatedResponse; +}; + +export type GetV1CompanyDepartmentsResponse = + GetV1CompanyDepartmentsResponses[keyof GetV1CompanyDepartmentsResponses]; + +export type PostV1CompanyDepartmentsData = { + /** + * Create Company Department request params + */ + body: CreateCompanyDepartmentParams; + path?: never; + query?: never; + url: '/v1/company-departments'; +}; + +export type PostV1CompanyDepartmentsErrors = { + /** + * Not Found + */ + 404: NotFoundResponse; + /** + * Unprocessable Entity + */ + 422: UnprocessableEntityResponse; +}; + +export type PostV1CompanyDepartmentsError = + PostV1CompanyDepartmentsErrors[keyof PostV1CompanyDepartmentsErrors]; + +export type PostV1CompanyDepartmentsResponses = { + /** + * Created + */ + 201: CompanyDepartmentCreatedResponse; +}; + +export type PostV1CompanyDepartmentsResponse = + PostV1CompanyDepartmentsResponses[keyof PostV1CompanyDepartmentsResponses]; + +export type GetV1PayrollRunsPayrollRunIdEmployeeDetailsData = { + body?: never; + path: { /** - * Forbidden + * Payroll run ID */ - 403: ForbiddenResponse; + payroll_run_id: string; + }; + query?: { /** - * Not Found + * Starts fetching records after the given page */ - 404: NotFoundResponse; + page?: number; /** - * Unprocessable Entity + * Number of items per page */ - 422: UnprocessableEntityResponse; + page_size?: number; }; + url: '/v1/payroll-runs/{payroll_run_id}/employee-details'; +}; -export type PostV1ContractorsEmploymentsEmploymentIdContractorCorSubscriptionError = - PostV1ContractorsEmploymentsEmploymentIdContractorCorSubscriptionErrors[keyof PostV1ContractorsEmploymentsEmploymentIdContractorCorSubscriptionErrors]; +export type GetV1PayrollRunsPayrollRunIdEmployeeDetailsErrors = { + /** + * Unauthorized + */ + 401: UnauthorizedResponse; + /** + * Not Found + */ + 404: NotFoundResponse; + /** + * Unprocessable Entity + */ + 422: UnprocessableEntityResponse; +}; -export type PostV1ContractorsEmploymentsEmploymentIdContractorCorSubscriptionResponses = - { +export type GetV1PayrollRunsPayrollRunIdEmployeeDetailsError = + GetV1PayrollRunsPayrollRunIdEmployeeDetailsErrors[keyof GetV1PayrollRunsPayrollRunIdEmployeeDetailsErrors]; + +export type GetV1PayrollRunsPayrollRunIdEmployeeDetailsResponses = { + /** + * Success + */ + 200: EmployeeDetailsResponse; +}; + +export type GetV1PayrollRunsPayrollRunIdEmployeeDetailsResponse = + GetV1PayrollRunsPayrollRunIdEmployeeDetailsResponses[keyof GetV1PayrollRunsPayrollRunIdEmployeeDetailsResponses]; + +export type GetV1EmploymentsEmploymentIdData = { + body?: never; + headers: { /** - * Created + * Requires a Company-scoped access token obtained through the Authorization Code flow or the Refresh Token flow. + * + * The refresh token needs to have been obtained through the Authorization Code flow. + * */ - 201: SuccessResponse; + Authorization: string; + }; + path: { + /** + * Employment ID + */ + employment_id: string; + }; + query?: { + /** + * Wether files should be excluded + */ + exclude_files?: boolean; }; + url: '/v1/employments/{employment_id}'; +}; -export type PostV1ContractorsEmploymentsEmploymentIdContractorCorSubscriptionResponse = - PostV1ContractorsEmploymentsEmploymentIdContractorCorSubscriptionResponses[keyof PostV1ContractorsEmploymentsEmploymentIdContractorCorSubscriptionResponses]; +export type GetV1EmploymentsEmploymentIdErrors = { + /** + * Bad Request + */ + 400: BadRequestResponse; + /** + * Forbidden + */ + 403: ForbiddenResponse; + /** + * Conflict + */ + 409: ConflictResponse; + /** + * Unprocessable Entity + */ + 422: UnprocessableEntityResponse; + /** + * Unprocessable Entity + */ + 429: TooManyRequestsResponse; +}; -export type PostV1OnboardingEmploymentsEmploymentIdPreOnboardingDocumentsIdSignData = - { +export type GetV1EmploymentsEmploymentIdError = + GetV1EmploymentsEmploymentIdErrors[keyof GetV1EmploymentsEmploymentIdErrors]; + +export type GetV1EmploymentsEmploymentIdResponses = { + /** + * Success + */ + 200: EmploymentShowResponse; +}; + +export type GetV1EmploymentsEmploymentIdResponse = + GetV1EmploymentsEmploymentIdResponses[keyof GetV1EmploymentsEmploymentIdResponses]; + +export type PatchV1EmploymentsEmploymentId2Data = { + /** + * Employment params + */ + body?: EmploymentFullParams; + headers: { /** - * SignContractDocument + * Requires a Company-scoped access token obtained through the Authorization Code flow or the Refresh Token flow. + * + * The refresh token needs to have been obtained through the Authorization Code flow. + * */ - body: SignContractDocument; - path: { - /** - * Employment ID - */ - employment_id: string; - /** - * Pre-onboarding document ID - */ - id: string; - }; - query?: never; - url: '/v1/onboarding/employments/{employment_id}/pre-onboarding-documents/{id}/sign'; + Authorization: string; }; - -export type PostV1OnboardingEmploymentsEmploymentIdPreOnboardingDocumentsIdSignErrors = - { + path: { /** - * Bad Request + * Employment ID */ - 400: BadRequestResponse; + employment_id: string; + }; + query?: { /** - * Unauthorized + * Version of the address_details form schema */ - 401: UnauthorizedResponse; + address_details_json_schema_version?: number | 'latest'; /** - * Forbidden + * Version of the administrative_details form schema */ - 403: ForbiddenResponse; + administrative_details_json_schema_version?: number | 'latest'; /** - * Not Found + * Version of the bank_account_details form schema */ - 404: NotFoundResponse; + bank_account_details_json_schema_version?: number | 'latest'; /** - * Unprocessable Entity + * Version of the employment_basic_information form schema */ - 422: UnprocessableEntityResponse; + employment_basic_information_json_schema_version?: number | 'latest'; + /** + * Version of the billing_address_details form schema + */ + billing_address_details_json_schema_version?: number | 'latest'; + /** + * Version of the contract_details form schema + */ + contract_details_json_schema_version?: number | 'latest'; + /** + * Version of the emergency_contact_details form schema + */ + emergency_contact_details_json_schema_version?: number | 'latest'; + /** + * Version of the personal_details form schema + */ + personal_details_json_schema_version?: number | 'latest'; + /** + * Version of the pricing_plan_details form schema + */ + pricing_plan_details_json_schema_version?: number | 'latest'; + /** + * Skips the dynamic benefits part of the schema if set. To be used when benefits are set via its own API. + */ + skip_benefits?: boolean; + /** + * Complementary action(s) to perform when creating an employment. + */ + actions?: string; }; + url: '/v1/employments/{employment_id}'; +}; -export type PostV1OnboardingEmploymentsEmploymentIdPreOnboardingDocumentsIdSignError = - PostV1OnboardingEmploymentsEmploymentIdPreOnboardingDocumentsIdSignErrors[keyof PostV1OnboardingEmploymentsEmploymentIdPreOnboardingDocumentsIdSignErrors]; +export type PatchV1EmploymentsEmploymentId2Errors = { + /** + * Bad Request + */ + 400: BadRequestResponse; + /** + * Forbidden + */ + 403: ForbiddenResponse; + /** + * Conflict + */ + 409: ConflictResponse; + /** + * Unprocessable Entity + */ + 422: UnprocessableEntityResponse; + /** + * Unprocessable Entity + */ + 429: TooManyRequestsResponse; +}; -export type PostV1OnboardingEmploymentsEmploymentIdPreOnboardingDocumentsIdSignResponses = - { +export type PatchV1EmploymentsEmploymentId2Error = + PatchV1EmploymentsEmploymentId2Errors[keyof PatchV1EmploymentsEmploymentId2Errors]; + +export type PatchV1EmploymentsEmploymentId2Responses = { + /** + * Success + */ + 200: EmploymentResponse; +}; + +export type PatchV1EmploymentsEmploymentId2Response = + PatchV1EmploymentsEmploymentId2Responses[keyof PatchV1EmploymentsEmploymentId2Responses]; + +export type PatchV1EmploymentsEmploymentIdData = { + /** + * Employment params + */ + body?: EmploymentFullParams; + headers: { /** - * Success + * Requires a Company-scoped access token obtained through the Authorization Code flow or the Refresh Token flow. + * + * The refresh token needs to have been obtained through the Authorization Code flow. + * */ - 200: SuccessResponse; + Authorization: string; + }; + path: { + /** + * Employment ID + */ + employment_id: string; }; + query?: { + /** + * Version of the address_details form schema + */ + address_details_json_schema_version?: number | 'latest'; + /** + * Version of the administrative_details form schema + */ + administrative_details_json_schema_version?: number | 'latest'; + /** + * Version of the bank_account_details form schema + */ + bank_account_details_json_schema_version?: number | 'latest'; + /** + * Version of the employment_basic_information form schema + */ + employment_basic_information_json_schema_version?: number | 'latest'; + /** + * Version of the billing_address_details form schema + */ + billing_address_details_json_schema_version?: number | 'latest'; + /** + * Version of the contract_details form schema + */ + contract_details_json_schema_version?: number | 'latest'; + /** + * Version of the emergency_contact_details form schema + */ + emergency_contact_details_json_schema_version?: number | 'latest'; + /** + * Version of the personal_details form schema + */ + personal_details_json_schema_version?: number | 'latest'; + /** + * Version of the pricing_plan_details form schema + */ + pricing_plan_details_json_schema_version?: number | 'latest'; + /** + * Skips the dynamic benefits part of the schema if set. To be used when benefits are set via its own API. + */ + skip_benefits?: boolean; + /** + * Complementary action(s) to perform when creating an employment. + */ + actions?: string; + }; + url: '/v1/employments/{employment_id}'; +}; + +export type PatchV1EmploymentsEmploymentIdErrors = { + /** + * Bad Request + */ + 400: BadRequestResponse; + /** + * Forbidden + */ + 403: ForbiddenResponse; + /** + * Conflict + */ + 409: ConflictResponse; + /** + * Unprocessable Entity + */ + 422: UnprocessableEntityResponse; + /** + * Unprocessable Entity + */ + 429: TooManyRequestsResponse; +}; + +export type PatchV1EmploymentsEmploymentIdError = + PatchV1EmploymentsEmploymentIdErrors[keyof PatchV1EmploymentsEmploymentIdErrors]; -export type PostV1OnboardingEmploymentsEmploymentIdPreOnboardingDocumentsIdSignResponse = - PostV1OnboardingEmploymentsEmploymentIdPreOnboardingDocumentsIdSignResponses[keyof PostV1OnboardingEmploymentsEmploymentIdPreOnboardingDocumentsIdSignResponses]; +export type PatchV1EmploymentsEmploymentIdResponses = { + /** + * Success + */ + 200: EmploymentResponse; +}; -export type GetV1ContractorInvoiceSchedulesData = { +export type PatchV1EmploymentsEmploymentIdResponse = + PatchV1EmploymentsEmploymentIdResponses[keyof PatchV1EmploymentsEmploymentIdResponses]; + +export type GetV1EmployeeTimesheetsData = { body?: never; path?: never; query?: { /** - * Filters contractor invoice schedules by start date greater than or equal to the value. - */ - start_date_from?: Date; - /** - * Filters contractor invoice schedules by start date less than or equal to the value. - */ - start_date_to?: Date; - /** - * Filters contractor invoice schedules by next invoice date greater than or equal to the value. - */ - next_invoice_date_from?: Date; - /** - * Filters contractor invoice schedules by next invoice date less than or equal to the value. - */ - next_invoice_date_to?: Date; - /** - * Filters contractor invoice schedules by status matching the value. - */ - status?: ContractorInvoiceScheduleStatus; - /** - * Filters contractor invoice schedules by employment id matching the value. - */ - employment_id?: UuidSlug; - /** - * Filters contractor invoice schedules by periodicity matching the value. + * Starts fetching records after the given page */ - periodicity?: ContractorInvoiceSchedulePeriodicity; + page?: number; /** - * Filters contractor invoice schedules by currency matching the value. + * Number of items per page */ - currency?: string; + page_size?: number; + }; + url: '/v1/employee/timesheets'; +}; + +export type GetV1EmployeeTimesheetsErrors = { + /** + * Unauthorized + */ + 401: UnauthorizedResponse; + /** + * Forbidden + */ + 403: ForbiddenResponse; + /** + * Not Found + */ + 404: NotFoundResponse; +}; + +export type GetV1EmployeeTimesheetsError = + GetV1EmployeeTimesheetsErrors[keyof GetV1EmployeeTimesheetsErrors]; + +export type GetV1EmployeeTimesheetsResponses = { + /** + * Success + */ + 200: SuccessResponse; +}; + +export type GetV1EmployeeTimesheetsResponse = + GetV1EmployeeTimesheetsResponses[keyof GetV1EmployeeTimesheetsResponses]; + +export type GetV1CustomFieldsCustomFieldIdValuesEmploymentIdData = { + body?: never; + path: { /** - * Field to sort by + * Custom field ID */ - sort_by?: - | 'number' - | 'total_amount' - | 'next_invoice_at' - | 'start_date' - | 'nr_occurrences'; + custom_field_id: string; /** - * Sort order + * Employment ID */ - order?: 'asc' | 'desc'; + employment_id: string; + }; + query?: never; + url: '/v1/custom-fields/{custom_field_id}/values/{employment_id}'; +}; + +export type GetV1CustomFieldsCustomFieldIdValuesEmploymentIdErrors = { + /** + * Unauthorized + */ + 401: UnauthorizedResponse; + /** + * Not Found + */ + 404: NotFoundResponse; + /** + * Unprocessable Entity + */ + 422: UnprocessableEntityResponse; +}; + +export type GetV1CustomFieldsCustomFieldIdValuesEmploymentIdError = + GetV1CustomFieldsCustomFieldIdValuesEmploymentIdErrors[keyof GetV1CustomFieldsCustomFieldIdValuesEmploymentIdErrors]; + +export type GetV1CustomFieldsCustomFieldIdValuesEmploymentIdResponses = { + /** + * Success + */ + 200: EmploymentCustomFieldValueResponse; +}; + +export type GetV1CustomFieldsCustomFieldIdValuesEmploymentIdResponse = + GetV1CustomFieldsCustomFieldIdValuesEmploymentIdResponses[keyof GetV1CustomFieldsCustomFieldIdValuesEmploymentIdResponses]; + +export type PatchV1CustomFieldsCustomFieldIdValuesEmploymentId2Data = { + /** + * Custom Field Value Update Parameters + */ + body: UpdateEmploymentCustomFieldValueParams; + path: { /** - * Starts fetching records after the given page + * Custom field ID */ - page?: number; + custom_field_id: string; /** - * Number of items per page + * Employment ID */ - page_size?: number; + employment_id: string; }; - url: '/v1/contractor-invoice-schedules'; + query?: never; + url: '/v1/custom-fields/{custom_field_id}/values/{employment_id}'; }; -export type GetV1ContractorInvoiceSchedulesErrors = { +export type PatchV1CustomFieldsCustomFieldIdValuesEmploymentId2Errors = { /** * Unauthorized */ @@ -25513,32 +25726,49 @@ export type GetV1ContractorInvoiceSchedulesErrors = { * Not Found */ 404: NotFoundResponse; + /** + * Unprocessable Entity + */ + 422: UnprocessableEntityResponse; }; -export type GetV1ContractorInvoiceSchedulesError = - GetV1ContractorInvoiceSchedulesErrors[keyof GetV1ContractorInvoiceSchedulesErrors]; +export type PatchV1CustomFieldsCustomFieldIdValuesEmploymentId2Error = + PatchV1CustomFieldsCustomFieldIdValuesEmploymentId2Errors[keyof PatchV1CustomFieldsCustomFieldIdValuesEmploymentId2Errors]; -export type GetV1ContractorInvoiceSchedulesResponses = { +export type PatchV1CustomFieldsCustomFieldIdValuesEmploymentId2Responses = { /** * Success */ - 200: ListContractorInvoiceSchedulesResponse; + 200: EmploymentCustomFieldValueResponse; }; -export type GetV1ContractorInvoiceSchedulesResponse = - GetV1ContractorInvoiceSchedulesResponses[keyof GetV1ContractorInvoiceSchedulesResponses]; +export type PatchV1CustomFieldsCustomFieldIdValuesEmploymentId2Response = + PatchV1CustomFieldsCustomFieldIdValuesEmploymentId2Responses[keyof PatchV1CustomFieldsCustomFieldIdValuesEmploymentId2Responses]; -export type PostV1ContractorInvoiceSchedulesData = { +export type PatchV1CustomFieldsCustomFieldIdValuesEmploymentIdData = { /** - * Bulk creation payload + * Custom Field Value Update Parameters */ - body: BulkContractorInvoiceScheduleCreateParams; - path?: never; + body: UpdateEmploymentCustomFieldValueParams; + path: { + /** + * Custom field ID + */ + custom_field_id: string; + /** + * Employment ID + */ + employment_id: string; + }; query?: never; - url: '/v1/contractor-invoice-schedules'; + url: '/v1/custom-fields/{custom_field_id}/values/{employment_id}'; }; -export type PostV1ContractorInvoiceSchedulesErrors = { +export type PatchV1CustomFieldsCustomFieldIdValuesEmploymentIdErrors = { + /** + * Unauthorized + */ + 401: UnauthorizedResponse; /** * Forbidden */ @@ -25548,65 +25778,88 @@ export type PostV1ContractorInvoiceSchedulesErrors = { */ 404: NotFoundResponse; /** - * BulkContractorInvoiceScheduleCreateResponse - * - * Response containing the lists of succeeded and failed schedules. + * Unprocessable Entity */ - 422: { - data: { - failures: Array; - successes: Array; - }; - }; + 422: UnprocessableEntityResponse; }; -export type PostV1ContractorInvoiceSchedulesError = - PostV1ContractorInvoiceSchedulesErrors[keyof PostV1ContractorInvoiceSchedulesErrors]; +export type PatchV1CustomFieldsCustomFieldIdValuesEmploymentIdError = + PatchV1CustomFieldsCustomFieldIdValuesEmploymentIdErrors[keyof PatchV1CustomFieldsCustomFieldIdValuesEmploymentIdErrors]; -export type PostV1ContractorInvoiceSchedulesResponses = { +export type PatchV1CustomFieldsCustomFieldIdValuesEmploymentIdResponses = { /** - * BulkContractorInvoiceScheduleCreateResponse - * - * Response containing the lists of succeeded and failed schedules. + * Success */ - 201: { - data: { - failures: Array; - successes: Array; - }; - }; + 200: EmploymentCustomFieldValueResponse; +}; + +export type PatchV1CustomFieldsCustomFieldIdValuesEmploymentIdResponse = + PatchV1CustomFieldsCustomFieldIdValuesEmploymentIdResponses[keyof PatchV1CustomFieldsCustomFieldIdValuesEmploymentIdResponses]; + +export type PutV1ResignationsOffboardingRequestIdValidateData = { /** - * BulkContractorInvoiceScheduleCreateResponse - * - * Response containing the lists of succeeded and failed schedules. + * ValidateResignation */ - 207: { - data: { - failures: Array; - successes: Array; - }; + body: ValidateResignationRequestParams; + path: { + /** + * Offboarding request ID + */ + offboarding_request_id: string; }; + query?: never; + url: '/v1/resignations/{offboarding_request_id}/validate'; +}; + +export type PutV1ResignationsOffboardingRequestIdValidateErrors = { + /** + * Bad Request + */ + 400: BadRequestResponse; + /** + * Unauthorized + */ + 401: UnauthorizedResponse; + /** + * Not Found + */ + 404: NotFoundResponse; + /** + * Unprocessable Entity + */ + 422: UnprocessableEntityResponse; + /** + * Unprocessable Entity + */ + 429: TooManyRequestsResponse; }; -export type PostV1ContractorInvoiceSchedulesResponse = - PostV1ContractorInvoiceSchedulesResponses[keyof PostV1ContractorInvoiceSchedulesResponses]; +export type PutV1ResignationsOffboardingRequestIdValidateError = + PutV1ResignationsOffboardingRequestIdValidateErrors[keyof PutV1ResignationsOffboardingRequestIdValidateErrors]; -export type PutV1EmployeeStateTaxesJurisdictionData = { +export type PutV1ResignationsOffboardingRequestIdValidateResponses = { /** - * Employee state taxes params + * Success */ - body?: EmploymentStateTaxesParams; + 200: SuccessResponse; +}; + +export type PutV1ResignationsOffboardingRequestIdValidateResponse = + PutV1ResignationsOffboardingRequestIdValidateResponses[keyof PutV1ResignationsOffboardingRequestIdValidateResponses]; + +export type GetV1ContractorInvoiceSchedulesIdData = { + body?: never; path: { /** - * Two-letter US state/jurisdiction code + * Resource unique identifier */ - jurisdiction: string; + id: UuidSlug; }; query?: never; - url: '/v1/employee/state-taxes/{jurisdiction}'; + url: '/v1/contractor-invoice-schedules/{id}'; }; -export type PutV1EmployeeStateTaxesJurisdictionErrors = { +export type GetV1ContractorInvoiceSchedulesIdErrors = { /** * Bad Request */ @@ -25633,36 +25886,39 @@ export type PutV1EmployeeStateTaxesJurisdictionErrors = { 429: TooManyRequestsResponse; }; -export type PutV1EmployeeStateTaxesJurisdictionError = - PutV1EmployeeStateTaxesJurisdictionErrors[keyof PutV1EmployeeStateTaxesJurisdictionErrors]; +export type GetV1ContractorInvoiceSchedulesIdError = + GetV1ContractorInvoiceSchedulesIdErrors[keyof GetV1ContractorInvoiceSchedulesIdErrors]; -export type PutV1EmployeeStateTaxesJurisdictionResponses = { +export type GetV1ContractorInvoiceSchedulesIdResponses = { /** * Success */ - 200: SuccessResponse; + 200: ContractorInvoiceScheduleResponse; }; -export type PutV1EmployeeStateTaxesJurisdictionResponse = - PutV1EmployeeStateTaxesJurisdictionResponses[keyof PutV1EmployeeStateTaxesJurisdictionResponses]; +export type GetV1ContractorInvoiceSchedulesIdResponse = + GetV1ContractorInvoiceSchedulesIdResponses[keyof GetV1ContractorInvoiceSchedulesIdResponses]; -export type GetV1EmploymentsEmploymentIdEngagementAgreementDetailsData = { - body?: never; +export type PatchV1ContractorInvoiceSchedulesId2Data = { + /** + * Update parameters + */ + body: UpdateScheduleContractorInvoiceParams; path: { /** - * Employment ID + * Resource unique identifier */ - employment_id: string; + id: UuidSlug; }; query?: never; - url: '/v1/employments/{employment_id}/engagement-agreement-details'; + url: '/v1/contractor-invoice-schedules/{id}'; }; -export type GetV1EmploymentsEmploymentIdEngagementAgreementDetailsErrors = { +export type PatchV1ContractorInvoiceSchedulesId2Errors = { /** - * Bad Request + * Unauthorized */ - 400: BadRequestResponse; + 401: UnauthorizedResponse; /** * Forbidden */ @@ -25675,45 +25931,41 @@ export type GetV1EmploymentsEmploymentIdEngagementAgreementDetailsErrors = { * Unprocessable Entity */ 422: UnprocessableEntityResponse; - /** - * Unprocessable Entity - */ - 429: TooManyRequestsResponse; }; -export type GetV1EmploymentsEmploymentIdEngagementAgreementDetailsError = - GetV1EmploymentsEmploymentIdEngagementAgreementDetailsErrors[keyof GetV1EmploymentsEmploymentIdEngagementAgreementDetailsErrors]; +export type PatchV1ContractorInvoiceSchedulesId2Error = + PatchV1ContractorInvoiceSchedulesId2Errors[keyof PatchV1ContractorInvoiceSchedulesId2Errors]; -export type GetV1EmploymentsEmploymentIdEngagementAgreementDetailsResponses = { +export type PatchV1ContractorInvoiceSchedulesId2Responses = { /** * Success */ - 200: EmploymentEngagementAgreementDetailsResponse; + 200: ContractorInvoiceScheduleResponse; }; -export type GetV1EmploymentsEmploymentIdEngagementAgreementDetailsResponse = - GetV1EmploymentsEmploymentIdEngagementAgreementDetailsResponses[keyof GetV1EmploymentsEmploymentIdEngagementAgreementDetailsResponses]; +export type PatchV1ContractorInvoiceSchedulesId2Response = + PatchV1ContractorInvoiceSchedulesId2Responses[keyof PatchV1ContractorInvoiceSchedulesId2Responses]; -export type PostV1EmploymentsEmploymentIdEngagementAgreementDetailsData = { +export type PatchV1ContractorInvoiceSchedulesIdData = { /** - * Employment engagement agreement details params + * Update parameters */ - body?: EmploymentEngagementAgreementDetailsParams; + body: UpdateScheduleContractorInvoiceParams; path: { /** - * Employment ID + * Resource unique identifier */ - employment_id: string; + id: UuidSlug; }; query?: never; - url: '/v1/employments/{employment_id}/engagement-agreement-details'; + url: '/v1/contractor-invoice-schedules/{id}'; }; -export type PostV1EmploymentsEmploymentIdEngagementAgreementDetailsErrors = { +export type PatchV1ContractorInvoiceSchedulesIdErrors = { /** - * Bad Request + * Unauthorized */ - 400: BadRequestResponse; + 401: UnauthorizedResponse; /** * Forbidden */ @@ -25722,51 +25974,46 @@ export type PostV1EmploymentsEmploymentIdEngagementAgreementDetailsErrors = { * Not Found */ 404: NotFoundResponse; - /** - * Conflict - */ - 409: ConflictResponse; /** * Unprocessable Entity */ 422: UnprocessableEntityResponse; - /** - * Unprocessable Entity - */ - 429: TooManyRequestsResponse; }; -export type PostV1EmploymentsEmploymentIdEngagementAgreementDetailsError = - PostV1EmploymentsEmploymentIdEngagementAgreementDetailsErrors[keyof PostV1EmploymentsEmploymentIdEngagementAgreementDetailsErrors]; +export type PatchV1ContractorInvoiceSchedulesIdError = + PatchV1ContractorInvoiceSchedulesIdErrors[keyof PatchV1ContractorInvoiceSchedulesIdErrors]; -export type PostV1EmploymentsEmploymentIdEngagementAgreementDetailsResponses = { +export type PatchV1ContractorInvoiceSchedulesIdResponses = { /** * Success */ - 200: SuccessResponse; + 200: ContractorInvoiceScheduleResponse; }; -export type PostV1EmploymentsEmploymentIdEngagementAgreementDetailsResponse = - PostV1EmploymentsEmploymentIdEngagementAgreementDetailsResponses[keyof PostV1EmploymentsEmploymentIdEngagementAgreementDetailsResponses]; +export type PatchV1ContractorInvoiceSchedulesIdResponse = + PatchV1ContractorInvoiceSchedulesIdResponses[keyof PatchV1ContractorInvoiceSchedulesIdResponses]; -export type GetV1BillingDocumentsBillingDocumentIdBreakdownData = { - body?: never; +export type PutV2EmploymentsEmploymentIdPricingPlanDetailsData = { + /** + * Employment pricing plan details params + */ + body?: EmploymentPricingPlanDetailsParams; path: { /** - * The billing document's ID + * Employment ID */ - billing_document_id: string; + employment_id: string; }; query?: { /** - * Filters the results by the type of the billing breakdown item. + * Version of the pricing_plan_details form schema */ - type?: string; + pricing_plan_details_json_schema_version?: number | 'latest'; }; - url: '/v1/billing-documents/{billing_document_id}/breakdown'; + url: '/v2/employments/{employment_id}/pricing_plan_details'; }; -export type GetV1BillingDocumentsBillingDocumentIdBreakdownErrors = { +export type PutV2EmploymentsEmploymentIdPricingPlanDetailsErrors = { /** * Bad Request */ @@ -25775,10 +26022,18 @@ export type GetV1BillingDocumentsBillingDocumentIdBreakdownErrors = { * Unauthorized */ 401: UnauthorizedResponse; + /** + * Forbidden + */ + 403: ForbiddenResponse; /** * Not Found */ 404: NotFoundResponse; + /** + * Conflict + */ + 409: ConflictResponse; /** * Unprocessable Entity */ @@ -25789,32 +26044,30 @@ export type GetV1BillingDocumentsBillingDocumentIdBreakdownErrors = { 429: TooManyRequestsResponse; }; -export type GetV1BillingDocumentsBillingDocumentIdBreakdownError = - GetV1BillingDocumentsBillingDocumentIdBreakdownErrors[keyof GetV1BillingDocumentsBillingDocumentIdBreakdownErrors]; +export type PutV2EmploymentsEmploymentIdPricingPlanDetailsError = + PutV2EmploymentsEmploymentIdPricingPlanDetailsErrors[keyof PutV2EmploymentsEmploymentIdPricingPlanDetailsErrors]; -export type GetV1BillingDocumentsBillingDocumentIdBreakdownResponses = { +export type PutV2EmploymentsEmploymentIdPricingPlanDetailsResponses = { /** * Success */ - 200: BillingDocumentBreakdownResponse; + 200: EmploymentDetailsOnlyResponse; }; -export type GetV1BillingDocumentsBillingDocumentIdBreakdownResponse = - GetV1BillingDocumentsBillingDocumentIdBreakdownResponses[keyof GetV1BillingDocumentsBillingDocumentIdBreakdownResponses]; +export type PutV2EmploymentsEmploymentIdPricingPlanDetailsResponse = + PutV2EmploymentsEmploymentIdPricingPlanDetailsResponses[keyof PutV2EmploymentsEmploymentIdPricingPlanDetailsResponses]; -export type GetV1EmploymentsEmploymentIdEmploymentAgreementPreviewData = { - body?: never; - path: { - /** - * Employment ID - */ - employment_id: string; - }; +export type PostV1RiskReserveData = { + /** + * Risk Reserve + */ + body: CreateRiskReserveParams; + path?: never; query?: never; - url: '/v1/employments/{employment_id}/employment-agreement/preview'; + url: '/v1/risk-reserve'; }; -export type GetV1EmploymentsEmploymentIdEmploymentAgreementPreviewErrors = { +export type PostV1RiskReserveErrors = { /** * Unauthorized */ @@ -25829,35 +26082,40 @@ export type GetV1EmploymentsEmploymentIdEmploymentAgreementPreviewErrors = { 422: UnprocessableEntityResponse; }; -export type GetV1EmploymentsEmploymentIdEmploymentAgreementPreviewError = - GetV1EmploymentsEmploymentIdEmploymentAgreementPreviewErrors[keyof GetV1EmploymentsEmploymentIdEmploymentAgreementPreviewErrors]; +export type PostV1RiskReserveError = + PostV1RiskReserveErrors[keyof PostV1RiskReserveErrors]; -export type GetV1EmploymentsEmploymentIdEmploymentAgreementPreviewResponses = { +export type PostV1RiskReserveResponses = { /** * Success */ - 200: EmploymentAgreementPreviewResponse; + 200: SuccessResponse; }; -export type GetV1EmploymentsEmploymentIdEmploymentAgreementPreviewResponse = - GetV1EmploymentsEmploymentIdEmploymentAgreementPreviewResponses[keyof GetV1EmploymentsEmploymentIdEmploymentAgreementPreviewResponses]; +export type PostV1RiskReserveResponse = + PostV1RiskReserveResponses[keyof PostV1RiskReserveResponses]; -export type PutV2EmploymentsEmploymentIdAdministrativeDetailsData = { +export type PutV2EmploymentsEmploymentIdAddressDetailsData = { /** - * Employment administrative details params + * Employment address details params */ - body?: EmploymentAdministrativeDetailsParams; + body?: EmploymentAddressDetailsParams; path: { /** * Employment ID */ employment_id: string; }; - query?: never; - url: '/v2/employments/{employment_id}/administrative-details'; + query?: { + /** + * Version of the address_details form schema + */ + address_details_json_schema_version?: number | 'latest'; + }; + url: '/v2/employments/{employment_id}/address_details'; }; -export type PutV2EmploymentsEmploymentIdAdministrativeDetailsErrors = { +export type PutV2EmploymentsEmploymentIdAddressDetailsErrors = { /** * Bad Request */ @@ -25888,99 +26146,135 @@ export type PutV2EmploymentsEmploymentIdAdministrativeDetailsErrors = { 429: TooManyRequestsResponse; }; -export type PutV2EmploymentsEmploymentIdAdministrativeDetailsError = - PutV2EmploymentsEmploymentIdAdministrativeDetailsErrors[keyof PutV2EmploymentsEmploymentIdAdministrativeDetailsErrors]; +export type PutV2EmploymentsEmploymentIdAddressDetailsError = + PutV2EmploymentsEmploymentIdAddressDetailsErrors[keyof PutV2EmploymentsEmploymentIdAddressDetailsErrors]; -export type PutV2EmploymentsEmploymentIdAdministrativeDetailsResponses = { +export type PutV2EmploymentsEmploymentIdAddressDetailsResponses = { /** * Success */ 200: EmploymentDetailsOnlyResponse; }; -export type PutV2EmploymentsEmploymentIdAdministrativeDetailsResponse = - PutV2EmploymentsEmploymentIdAdministrativeDetailsResponses[keyof PutV2EmploymentsEmploymentIdAdministrativeDetailsResponses]; +export type PutV2EmploymentsEmploymentIdAddressDetailsResponse = + PutV2EmploymentsEmploymentIdAddressDetailsResponses[keyof PutV2EmploymentsEmploymentIdAddressDetailsResponses]; -export type GetV1EmployeeDocumentsData = { - body?: never; - path?: never; - query?: { +export type PostV1SandboxCompaniesCompanyIdLegalEntitiesLegalEntityIdActivateGlobalPayrollData = + { + body?: never; + path: { + /** + * Company ID + */ + company_id: string; + /** + * Legal Entity ID to activate Global Payroll on + */ + legal_entity_id: string; + }; + query?: never; + url: '/v1/sandbox/companies/{company_id}/legal-entities/{legal_entity_id}/activate-global-payroll'; + }; + +export type PostV1SandboxCompaniesCompanyIdLegalEntitiesLegalEntityIdActivateGlobalPayrollErrors = + { /** - * Starts fetching records after the given page + * Bad Request */ - page?: number; + 400: BadRequestResponse; /** - * Number of items per page + * Unauthorized */ - page_size?: number; + 401: UnauthorizedResponse; /** - * Filter documents by their description or file name, accepts full and partial case insensitive matches + * Not Found */ - name?: string; + 404: NotFoundResponse; /** - * Filters the results that were uploaded on or after a given date + * Unprocessable Entity */ - inserted_after?: Date; + 422: UnprocessableEntityResponse; + /** + * Too many requests + */ + 429: TooManyRequestsResponse; + }; + +export type PostV1SandboxCompaniesCompanyIdLegalEntitiesLegalEntityIdActivateGlobalPayrollError = + PostV1SandboxCompaniesCompanyIdLegalEntitiesLegalEntityIdActivateGlobalPayrollErrors[keyof PostV1SandboxCompaniesCompanyIdLegalEntitiesLegalEntityIdActivateGlobalPayrollErrors]; + +export type PostV1SandboxCompaniesCompanyIdLegalEntitiesLegalEntityIdActivateGlobalPayrollResponses = + { /** - * Filters the results that were uploaded before a given date + * Success */ - inserted_before?: Date; + 200: SuccessResponse; + }; + +export type PostV1SandboxCompaniesCompanyIdLegalEntitiesLegalEntityIdActivateGlobalPayrollResponse = + PostV1SandboxCompaniesCompanyIdLegalEntitiesLegalEntityIdActivateGlobalPayrollResponses[keyof PostV1SandboxCompaniesCompanyIdLegalEntitiesLegalEntityIdActivateGlobalPayrollResponses]; + +export type GetV1ContractorsEmploymentsEmploymentIdContractDocumentsIdData = { + body?: never; + path: { /** - * Field to sort by + * Employment ID */ - sort_by?: - | 'description' - | 'document_source' - | 'inserted_at' - | 'name' - | 'type' - | 'uploaded_by_role' - | 'related_to' - | 'sub_type' - | 'uploaded_by'; + employment_id: string; /** - * Sort order + * Document ID */ - order?: 'asc' | 'desc'; + id: string; }; - url: '/v1/employee/documents'; + query?: never; + url: '/v1/contractors/employments/{employment_id}/contract-documents/{id}'; }; -export type GetV1EmployeeDocumentsErrors = { +export type GetV1ContractorsEmploymentsEmploymentIdContractDocumentsIdErrors = { /** - * Forbidden + * Unauthorized */ - 403: ForbiddenResponse; + 401: UnauthorizedResponse; /** * Not Found */ 404: NotFoundResponse; -}; - -export type GetV1EmployeeDocumentsError = - GetV1EmployeeDocumentsErrors[keyof GetV1EmployeeDocumentsErrors]; - -export type GetV1EmployeeDocumentsResponses = { /** - * Success + * Unprocessable Entity */ - 200: ListDocumentsResponse; + 422: UnprocessableEntityResponse; }; -export type GetV1EmployeeDocumentsResponse = - GetV1EmployeeDocumentsResponses[keyof GetV1EmployeeDocumentsResponses]; +export type GetV1ContractorsEmploymentsEmploymentIdContractDocumentsIdError = + GetV1ContractorsEmploymentsEmploymentIdContractDocumentsIdErrors[keyof GetV1ContractorsEmploymentsEmploymentIdContractDocumentsIdErrors]; -export type PostV1EmployeeDocumentsData = { +export type GetV1ContractorsEmploymentsEmploymentIdContractDocumentsIdResponses = + { + /** + * Success + */ + 200: ContractDocumentResponse; + }; + +export type GetV1ContractorsEmploymentsEmploymentIdContractDocumentsIdResponse = + GetV1ContractorsEmploymentsEmploymentIdContractDocumentsIdResponses[keyof GetV1ContractorsEmploymentsEmploymentIdContractDocumentsIdResponses]; + +export type PostV1ContractorsEmploymentsEmploymentIdTimesheetsData = { /** - * File + * ContractorCreateTimesheetParams */ - body: EmployeeFileParams; - path?: never; + body: ContractorCreateTimesheetParams; + path: { + /** + * Contractor employment ID + */ + employment_id: string; + }; query?: never; - url: '/v1/employee/documents'; + url: '/v1/contractors/employments/{employment_id}/timesheets'; }; -export type PostV1EmployeeDocumentsErrors = { +export type PostV1ContractorsEmploymentsEmploymentIdTimesheetsErrors = { /** * Bad Request */ @@ -26003,125 +26297,138 @@ export type PostV1EmployeeDocumentsErrors = { 422: UnprocessableEntityResponse; }; -export type PostV1EmployeeDocumentsError = - PostV1EmployeeDocumentsErrors[keyof PostV1EmployeeDocumentsErrors]; +export type PostV1ContractorsEmploymentsEmploymentIdTimesheetsError = + PostV1ContractorsEmploymentsEmploymentIdTimesheetsErrors[keyof PostV1ContractorsEmploymentsEmploymentIdTimesheetsErrors]; -export type PostV1EmployeeDocumentsResponses = { +export type PostV1ContractorsEmploymentsEmploymentIdTimesheetsResponses = { /** - * Created + * Success */ - 201: UploadFileResponse; + 200: ContractorTimesheetResponse; }; -export type PostV1EmployeeDocumentsResponse = - PostV1EmployeeDocumentsResponses[keyof PostV1EmployeeDocumentsResponses]; +export type PostV1ContractorsEmploymentsEmploymentIdTimesheetsResponse = + PostV1ContractorsEmploymentsEmploymentIdTimesheetsResponses[keyof PostV1ContractorsEmploymentsEmploymentIdTimesheetsResponses]; -export type PostV1TimeoffTimeoffIdCancelRequestApproveData = { - body?: never; - path: { +export type PostV1ContractorsEmploymentsEmploymentIdCorTerminationRequestsData = + { + body?: never; + path: { + /** + * Employment ID + */ + employment_id: string; + }; + query?: never; + url: '/v1/contractors/employments/{employment_id}/cor-termination-requests'; + }; + +export type PostV1ContractorsEmploymentsEmploymentIdCorTerminationRequestsErrors = + { /** - * Time Off ID + * Bad Request */ - timeoff_id: string; + 400: BadRequestResponse; + /** + * Forbidden + */ + 403: ForbiddenResponse; + /** + * Not Found + */ + 404: NotFoundResponse; + /** + * Unprocessable Entity + */ + 422: UnprocessableEntityResponse; }; - query?: never; - url: '/v1/timeoff/{timeoff_id}/cancel-request/approve'; -}; - -export type PostV1TimeoffTimeoffIdCancelRequestApproveErrors = { - /** - * Unauthorized - */ - 401: UnauthorizedResponse; - /** - * Unprocessable Entity - */ - 422: UnprocessableEntityResponse; - /** - * Unprocessable Entity - */ - 429: TooManyRequestsResponse; -}; -export type PostV1TimeoffTimeoffIdCancelRequestApproveError = - PostV1TimeoffTimeoffIdCancelRequestApproveErrors[keyof PostV1TimeoffTimeoffIdCancelRequestApproveErrors]; +export type PostV1ContractorsEmploymentsEmploymentIdCorTerminationRequestsError = + PostV1ContractorsEmploymentsEmploymentIdCorTerminationRequestsErrors[keyof PostV1ContractorsEmploymentsEmploymentIdCorTerminationRequestsErrors]; -export type PostV1TimeoffTimeoffIdCancelRequestApproveResponses = { - /** - * Success - */ - 200: SuccessResponse; -}; +export type PostV1ContractorsEmploymentsEmploymentIdCorTerminationRequestsResponses = + { + /** + * Created + */ + 201: CorTerminationRequestCreatedResponse; + }; -export type PostV1TimeoffTimeoffIdCancelRequestApproveResponse = - PostV1TimeoffTimeoffIdCancelRequestApproveResponses[keyof PostV1TimeoffTimeoffIdCancelRequestApproveResponses]; +export type PostV1ContractorsEmploymentsEmploymentIdCorTerminationRequestsResponse = + PostV1ContractorsEmploymentsEmploymentIdCorTerminationRequestsResponses[keyof PostV1ContractorsEmploymentsEmploymentIdCorTerminationRequestsResponses]; -export type PostV1IdentityVerificationEmploymentIdVerifyData = { +export type GetV1EmployeePayslipsData = { body?: never; - path: { + path?: never; + query?: { /** - * Employment ID + * Starts fetching records after the given page */ - employment_id: string; + page?: number; + /** + * Number of items per page + */ + page_size?: number; }; - query?: never; - url: '/v1/identity-verification/{employment_id}/verify'; + url: '/v1/employee/payslips'; }; -export type PostV1IdentityVerificationEmploymentIdVerifyErrors = { +export type GetV1EmployeePayslipsErrors = { /** * Unauthorized */ 401: UnauthorizedResponse; /** - * Not Found + * Forbidden */ - 404: NotFoundResponse; + 403: ForbiddenResponse; /** - * Unprocessable Entity + * Not Found */ - 422: UnprocessableEntityResponse; + 404: NotFoundResponse; }; -export type PostV1IdentityVerificationEmploymentIdVerifyError = - PostV1IdentityVerificationEmploymentIdVerifyErrors[keyof PostV1IdentityVerificationEmploymentIdVerifyErrors]; +export type GetV1EmployeePayslipsError = + GetV1EmployeePayslipsErrors[keyof GetV1EmployeePayslipsErrors]; -export type PostV1IdentityVerificationEmploymentIdVerifyResponses = { +export type GetV1EmployeePayslipsResponses = { /** * Success */ - 200: SuccessResponse; + 200: ListEmployeePayslipsResponse; }; -export type PostV1IdentityVerificationEmploymentIdVerifyResponse = - PostV1IdentityVerificationEmploymentIdVerifyResponses[keyof PostV1IdentityVerificationEmploymentIdVerifyResponses]; +export type GetV1EmployeePayslipsResponse = + GetV1EmployeePayslipsResponses[keyof GetV1EmployeePayslipsResponses]; -export type GetV1BillingDocumentsBillingDocumentIdPdfData = { - body?: never; - headers: { - /** - * Requires a Company-scoped access token obtained through the Authorization Code flow or the Refresh Token flow. - * - * The refresh token needs to have been obtained through the Authorization Code flow. - * - */ - Authorization: string; - }; +export type PutV1EmployeeStateTaxesJurisdictionData = { + /** + * Employee state taxes params + */ + body?: EmploymentStateTaxesParams; path: { /** - * The billing document's ID + * Two-letter US state/jurisdiction code */ - billing_document_id: string; + jurisdiction: string; }; query?: never; - url: '/v1/billing-documents/{billing_document_id}/pdf'; + url: '/v1/employee/state-taxes/{jurisdiction}'; }; -export type GetV1BillingDocumentsBillingDocumentIdPdfErrors = { +export type PutV1EmployeeStateTaxesJurisdictionErrors = { + /** + * Bad Request + */ + 400: BadRequestResponse; /** * Unauthorized */ 401: UnauthorizedResponse; + /** + * Forbidden + */ + 403: ForbiddenResponse; /** * Not Found */ @@ -26130,17 +26437,21 @@ export type GetV1BillingDocumentsBillingDocumentIdPdfErrors = { * Unprocessable Entity */ 422: UnprocessableEntityResponse; + /** + * Unprocessable Entity + */ + 429: TooManyRequestsResponse; }; -export type GetV1BillingDocumentsBillingDocumentIdPdfError = - GetV1BillingDocumentsBillingDocumentIdPdfErrors[keyof GetV1BillingDocumentsBillingDocumentIdPdfErrors]; +export type PutV1EmployeeStateTaxesJurisdictionError = + PutV1EmployeeStateTaxesJurisdictionErrors[keyof PutV1EmployeeStateTaxesJurisdictionErrors]; -export type GetV1BillingDocumentsBillingDocumentIdPdfResponses = { +export type PutV1EmployeeStateTaxesJurisdictionResponses = { /** * Success */ - 200: GenericFile; + 200: SuccessResponse; }; -export type GetV1BillingDocumentsBillingDocumentIdPdfResponse = - GetV1BillingDocumentsBillingDocumentIdPdfResponses[keyof GetV1BillingDocumentsBillingDocumentIdPdfResponses]; +export type PutV1EmployeeStateTaxesJurisdictionResponse = + PutV1EmployeeStateTaxesJurisdictionResponses[keyof PutV1EmployeeStateTaxesJurisdictionResponses]; From 4b6e2965d4986f9adb5fe5740a64b08c97736085 Mon Sep 17 00:00:00 2001 From: Gabriel Garcia Date: Thu, 25 Jun 2026 13:34:16 +0200 Subject: [PATCH 02/13] fix(preonboarding) - fix type check --- src/flows/Onboarding/api.ts | 34 +++++++++---------- .../components/PreOnboardingRequirements.tsx | 10 ++---- .../PreOnboardingRequirements.test.tsx | 6 +--- 3 files changed, 21 insertions(+), 29 deletions(-) diff --git a/src/flows/Onboarding/api.ts b/src/flows/Onboarding/api.ts index c3a0a2d8a..4aed38f69 100644 --- a/src/flows/Onboarding/api.ts +++ b/src/flows/Onboarding/api.ts @@ -7,7 +7,6 @@ import { EmploymentCreateParams, EmploymentEngagementAgreementDetailsParams, EmploymentFullParams, - FindOrCreatePreOnboardingDocumentParams, getV1CompaniesCompanyId, getV1CompaniesCompanyIdEmploymentsEmploymentIdOnboardingReservesStatus, getV1CountriesCountryCodeEngagementAgreementDetails, @@ -24,13 +23,14 @@ import { postV2EmploymentsEmploymentIdEngagementAgreementDetails, postV1EmploymentsEmploymentIdInvite, PostV1EmploymentsEmploymentIdInviteData, - postV1OnboardingEmploymentsEmploymentIdPreOnboardingDocuments, + postV1OnboardingEmploymentsEmploymentIdPreOnboardingRequirementsRequirementSlugDocuments, postV1OnboardingEmploymentsEmploymentIdPreOnboardingDocumentsIdSign, postV1RiskReserve, putV1EmploymentsEmploymentIdBenefitOffers, UnifiedEmploymentUpsertBenefitOffersRequest, - getV1OnboardingEmploymentsEmploymentIdPreOnboardingDocumentRequirements, + getV1OnboardingEmploymentsEmploymentIdPreOnboardingRequirements, getV1OnboardingEmploymentsEmploymentIdPreOnboardingDocumentsId, + PostV1OnboardingEmploymentsEmploymentIdPreOnboardingRequirementsRequirementSlugDocumentsData, } from '@/src/client'; import { useClient } from '@/src/context'; @@ -584,14 +584,12 @@ export const useGetPreOnboardingRequirements = ( queryKey: ['pre-onboarding-requirements', employmentId], queryFn: async () => { const response = - await getV1OnboardingEmploymentsEmploymentIdPreOnboardingDocumentRequirements( - { - client: client as Client, - path: { - employment_id: employmentId, - }, + await getV1OnboardingEmploymentsEmploymentIdPreOnboardingRequirements({ + client: client as Client, + path: { + employment_id: employmentId, }, - ); + }); if (response.error || !response.data) { throw new Error('Failed to fetch pre-onboarding requirements'); @@ -616,15 +614,17 @@ export const useCreatePreOnboardingDocument = () => { body, }: { employmentId: string; - body: FindOrCreatePreOnboardingDocumentParams; + body: PostV1OnboardingEmploymentsEmploymentIdPreOnboardingRequirementsRequirementSlugDocumentsData['path']; }) => { - return postV1OnboardingEmploymentsEmploymentIdPreOnboardingDocuments({ - client: client as Client, - body, - path: { - employment_id: employmentId, + return postV1OnboardingEmploymentsEmploymentIdPreOnboardingRequirementsRequirementSlugDocuments( + { + client: client as Client, + path: { + employment_id: employmentId, + requirement_slug: body.requirement_slug, + }, }, - }); + ); }, }); }; diff --git a/src/flows/Onboarding/components/PreOnboardingRequirements.tsx b/src/flows/Onboarding/components/PreOnboardingRequirements.tsx index 6bf8c5138..3eab4988a 100644 --- a/src/flows/Onboarding/components/PreOnboardingRequirements.tsx +++ b/src/flows/Onboarding/components/PreOnboardingRequirements.tsx @@ -53,10 +53,7 @@ export const usePreOnboardingRequirements = ({ const { mutateAsyncOrThrow: signDocumentMutationAsync } = mutationToPromise(signDocumentMutation); - const onCreateDocument = async ( - requirementSlug: string, - constraintsAckAt?: string, - ) => { + const onCreateDocument = async (requirementSlug: string) => { const requirement = requirements?.find( (req) => req.slug === requirementSlug, ); @@ -78,9 +75,8 @@ export const usePreOnboardingRequirements = ({ const result = await createDocumentMutationAsync({ employmentId, body: { - pre_onboarding_document_requirement_slug: requirementSlug, - constraints_ack_at: - constraintsAckAt || requirement?.document_constraints_ack_at || null, + requirement_slug: requirementSlug, + employment_id: employmentId, }, }); const newDocumentId = result?.data.pre_onboarding_document.id; diff --git a/src/flows/Onboarding/components/__tests__/PreOnboardingRequirements.test.tsx b/src/flows/Onboarding/components/__tests__/PreOnboardingRequirements.test.tsx index 4a69a7a4c..3e975dceb 100644 --- a/src/flows/Onboarding/components/__tests__/PreOnboardingRequirements.test.tsx +++ b/src/flows/Onboarding/components/__tests__/PreOnboardingRequirements.test.tsx @@ -235,7 +235,6 @@ describe('PreOnboardingRequirements', () => { ); let renderBag: ReturnType; - const ackTime = '2026-05-19T10:00:00Z'; render( { return ( - + ); } return ( ); }} @@ -258,12 +258,21 @@ describe('PreOnboardingRequirements', () => { expect(renderBag?.requirements).toBeDefined(); }); - const button = screen.getByText('Generate with Ack'); + const button = screen.getByText('Generate Document'); fireEvent.click(button); await waitFor(() => { expect(createDocumentSpy).toHaveBeenCalled(); }); + + expect(createDocumentSpy).toHaveBeenCalledWith( + expect.objectContaining({ + params: expect.objectContaining({ + employmentId: TEST_EMPLOYMENT_ID, + requirementSlug: '5e39159e-96ef-40ea-82bc-b054917fc82f', + }), + }), + ); }); }); @@ -383,7 +392,7 @@ describe('PreOnboardingRequirements', () => { it('should show isCreatingDocument during document generation', async () => { server.use( http.post( - '*/v1/onboarding/employments/:employmentId/pre-onboarding-documents', + '*/v1/onboarding/employments/:employmentId/pre-onboarding-requirements/:requirementSlug/documents', () => { return new Promise(() => {}); }, @@ -566,7 +575,7 @@ describe('PreOnboardingRequirements', () => { server.use( http.post( - '*/v1/onboarding/employments/:employmentId/pre-onboarding-documents', + '*/v1/onboarding/employments/:employmentId/pre-onboarding-requirements/:requirementSlug/documents', createDocumentSpy, ), ); @@ -616,30 +625,28 @@ describe('PreOnboardingRequirements', () => { server.use( http.get( - '*/v1/onboarding/employments/:employmentId/pre-onboarding-document-requirements', + '*/v1/onboarding/employments/:employmentId/pre-onboarding-requirements', () => { return HttpResponse.json({ data: [ { name: 'Individual Labor Agreement', status: 'blocked', + type: 'document', description: 'Blocked until MSA is signed', slug: '5e39159e-96ef-40ea-82bc-b054917fc82f', depends_on_requirement: { name: 'Master Service Agreement', - status: 'awaiting_signatures', + status: 'awaiting', + type: 'document', description: 'Master Service Agreement', slug: 'dc3b954c-9d6c-4ddd-b8dc-531f9be773fb', depends_on_requirement: null, - document_constraints_ack_at: null, freeze_employment_data: false, - needs_constraints_ack: true, redlining_help_email: null, supports_redlining: false, }, - document_constraints_ack_at: null, freeze_employment_data: false, - needs_constraints_ack: true, redlining_help_email: null, supports_redlining: false, }, @@ -648,7 +655,7 @@ describe('PreOnboardingRequirements', () => { }, ), http.post( - '*/v1/onboarding/employments/:employmentId/pre-onboarding-documents', + '*/v1/onboarding/employments/:employmentId/pre-onboarding-requirements/:requirementSlug/documents', createDocumentSpy, ), ); @@ -693,30 +700,28 @@ describe('PreOnboardingRequirements', () => { it('should throw error when attempting to create document for blocked requirement', async () => { server.use( http.get( - '*/v1/onboarding/employments/:employmentId/pre-onboarding-document-requirements', + '*/v1/onboarding/employments/:employmentId/pre-onboarding-requirements', () => { return HttpResponse.json({ data: [ { name: 'Individual Labor Agreement', status: 'blocked', + type: 'document', description: 'Blocked until MSA is signed', slug: '5e39159e-96ef-40ea-82bc-b054917fc82f', depends_on_requirement: { name: 'Master Service Agreement', - status: 'awaiting_signatures', + status: 'awaiting', + type: 'document', description: 'Master Service Agreement', slug: 'dc3b954c-9d6c-4ddd-b8dc-531f9be773fb', depends_on_requirement: null, - document_constraints_ack_at: null, freeze_employment_data: false, - needs_constraints_ack: true, redlining_help_email: null, supports_redlining: false, }, - document_constraints_ack_at: null, freeze_employment_data: false, - needs_constraints_ack: true, redlining_help_email: null, supports_redlining: false, }, @@ -749,4 +754,190 @@ describe('PreOnboardingRequirements', () => { ); }); }); + + describe('requirement acknowledgement', () => { + it('should acknowledge requirement when onAcknowledgeRequirement is called', async () => { + const acknowledgeSpy = vi.fn(() => + HttpResponse.json({ data: { status: 'ok' } }), + ); + + server.use( + http.post( + '*/v1/onboarding/employments/:employmentId/pre-onboarding-requirements/:requirementSlug/acknowledge', + acknowledgeSpy, + ), + ); + + let renderBag: ReturnType; + + render( + { + renderBag = bag; + return ( + + ); + }} + />, + { wrapper: TestWrapper }, + ); + + await waitFor(() => { + expect(renderBag?.requirements).toBeDefined(); + }); + + const button = screen.getByText('Acknowledge'); + fireEvent.click(button); + + await waitFor(() => { + expect(acknowledgeSpy).toHaveBeenCalled(); + }); + + expect(acknowledgeSpy).toHaveBeenCalledWith( + expect.objectContaining({ + params: expect.objectContaining({ + employmentId: TEST_EMPLOYMENT_ID, + requirementSlug: '5e39159e-96ef-40ea-82bc-b054917fc82f', + }), + }), + ); + }); + + it('should remove acknowledgement when requirement is finished', async () => { + const removeAcknowledgeSpy = vi.fn(() => + HttpResponse.json({ data: { status: 'ok' } }), + ); + + server.use( + http.delete( + '*/v1/onboarding/employments/:employmentId/pre-onboarding-requirements/:requirementSlug/acknowledge', + removeAcknowledgeSpy, + ), + ); + + let renderBag: ReturnType; + + render( + { + renderBag = bag; + return ( + + ); + }} + />, + { wrapper: TestWrapper }, + ); + + await waitFor(() => { + expect(renderBag?.requirements).toBeDefined(); + }); + + const button = screen.getByText('Remove Acknowledgement'); + fireEvent.click(button); + + await waitFor(() => { + expect(removeAcknowledgeSpy).toHaveBeenCalled(); + }); + + expect(removeAcknowledgeSpy).toHaveBeenCalledWith( + expect.objectContaining({ + params: expect.objectContaining({ + employmentId: TEST_EMPLOYMENT_ID, + requirementSlug: 'dc3b954c-9d6c-4ddd-b8dc-531f9be773fb', + }), + }), + ); + }); + + it('should throw error when acknowledgement is locked by a dependent requirement', async () => { + server.use( + http.get( + '*/v1/onboarding/employments/:employmentId/pre-onboarding-requirements', + () => { + return HttpResponse.json({ + data: [ + { + name: 'Master Service Agreement', + status: 'finished', + type: 'acknowledgement', + description: 'Master Service Agreement', + slug: 'dc3b954c-9d6c-4ddd-b8dc-531f9be773fb', + depends_on_requirement: null, + freeze_employment_data: false, + redlining_help_email: null, + supports_redlining: false, + }, + { + name: 'Individual Labor Agreement', + status: 'finished', + type: 'document', + description: 'Individual Labor Agreement', + slug: '5e39159e-96ef-40ea-82bc-b054917fc82f', + depends_on_requirement: { + name: 'Master Service Agreement', + status: 'finished', + type: 'acknowledgement', + description: 'Master Service Agreement', + slug: 'dc3b954c-9d6c-4ddd-b8dc-531f9be773fb', + depends_on_requirement: null, + freeze_employment_data: false, + redlining_help_email: null, + supports_redlining: false, + }, + freeze_employment_data: false, + redlining_help_email: null, + supports_redlining: false, + }, + ], + }); + }, + ), + ); + + let renderBag!: ReturnType; + + render( + { + renderBag = bag; + return
Test
; + }} + />, + { wrapper: TestWrapper }, + ); + + await waitFor(() => { + expect(renderBag.requirements).toBeDefined(); + }); + + expect( + renderBag.isAckLocked('dc3b954c-9d6c-4ddd-b8dc-531f9be773fb'), + ).toBe(true); + + await expect( + renderBag.onAcknowledgeRequirement( + 'dc3b954c-9d6c-4ddd-b8dc-531f9be773fb', + ), + ).rejects.toThrow( + 'Cannot uncheck this acknowledgement because other requirements depend on it and are already in progress or completed.', + ); + }); + }); }); diff --git a/src/flows/Onboarding/tests/OnboardingInvite.test.tsx b/src/flows/Onboarding/tests/OnboardingInvite.test.tsx index 9e75949cb..9f3ecb189 100644 --- a/src/flows/Onboarding/tests/OnboardingInvite.test.tsx +++ b/src/flows/Onboarding/tests/OnboardingInvite.test.tsx @@ -89,7 +89,7 @@ describe('OnboardingInvite', () => { }), http.get( - '*/v1/onboarding/employments/:employmentId/pre-onboarding-document-requirements', + '*/v1/onboarding/employments/:employmentId/pre-onboarding-requirements', () => { return HttpResponse.json({ data: [] }); }, @@ -1215,7 +1215,7 @@ describe('OnboardingInvite', () => { server.use( http.get( - '*/v1/onboarding/employments/:employmentId/pre-onboarding-document-requirements', + '*/v1/onboarding/employments/:employmentId/pre-onboarding-requirements', () => { return HttpResponse.json(preOnboardingRequirementsMock); }, @@ -1236,19 +1236,18 @@ describe('OnboardingInvite', () => { server.use( http.get( - '*/v1/onboarding/employments/:employmentId/pre-onboarding-document-requirements', + '*/v1/onboarding/employments/:employmentId/pre-onboarding-requirements', () => { return HttpResponse.json({ data: [ { name: 'Master Service Agreement', status: 'finished', + type: 'document', description: 'Master Service Agreement required', slug: 'dc3b954c-9d6c-4ddd-b8dc-531f9be773fb', depends_on_requirement: null, - document_constraints_ack_at: '2026-05-18T12:23:24Z', freeze_employment_data: false, - needs_constraints_ack: true, redlining_help_email: null, supports_redlining: false, }, @@ -1280,31 +1279,29 @@ describe('OnboardingInvite', () => { server.use( http.get( - '*/v1/onboarding/employments/:employmentId/pre-onboarding-document-requirements', + '*/v1/onboarding/employments/:employmentId/pre-onboarding-requirements', () => { return HttpResponse.json({ data: [ { name: 'Individual Labor Agreement', - status: 'awaiting_signatures', + status: 'awaiting', + type: 'document', description: 'Individual Labor Agreement required', slug: '5e39159e-96ef-40ea-82bc-b054917fc82f', depends_on_requirement: null, - document_constraints_ack_at: null, freeze_employment_data: false, - needs_constraints_ack: true, redlining_help_email: null, supports_redlining: false, }, { name: 'Master Service Agreement', status: 'finished', + type: 'document', description: 'Master Service Agreement required', slug: 'dc3b954c-9d6c-4ddd-b8dc-531f9be773fb', depends_on_requirement: null, - document_constraints_ack_at: '2026-05-18T12:23:24Z', freeze_employment_data: false, - needs_constraints_ack: true, redlining_help_email: null, supports_redlining: false, }, @@ -1329,7 +1326,7 @@ describe('OnboardingInvite', () => { server.use( http.get( - '*/v1/onboarding/employments/:employmentId/pre-onboarding-document-requirements', + '*/v1/onboarding/employments/:employmentId/pre-onboarding-requirements', async () => { await requirementsPromise; return HttpResponse.json({ @@ -1337,12 +1334,11 @@ describe('OnboardingInvite', () => { { name: 'Master Service Agreement', status: 'finished', + type: 'document', description: 'Master Service Agreement required', slug: 'dc3b954c-9d6c-4ddd-b8dc-531f9be773fb', depends_on_requirement: null, - document_constraints_ack_at: '2026-05-18T12:23:24Z', freeze_employment_data: false, - needs_constraints_ack: true, redlining_help_email: null, supports_redlining: false, }, diff --git a/src/tests/handlers.ts b/src/tests/handlers.ts index e4928e560..42c01e307 100644 --- a/src/tests/handlers.ts +++ b/src/tests/handlers.ts @@ -131,14 +131,14 @@ const benefitOffersSchemaHandler = http.get( ); const preOnboardingRequirementsHandler = http.get( - '*/v1/onboarding/employments/:employmentId/pre-onboarding-document-requirements', + '*/v1/onboarding/employments/:employmentId/pre-onboarding-requirements', () => { return HttpResponse.json(preOnboardingRequirementsMock); }, ); const createPreOnboardingDocumentHandler = http.post( - '*/v1/onboarding/employments/:employmentId/pre-onboarding-documents', + '*/v1/onboarding/employments/:employmentId/pre-onboarding-requirements/:requirementSlug/documents', () => { return HttpResponse.json(generatedDocumentMock); }, From 40226290ddabc4de00c87b56cb59052887d293e6 Mon Sep 17 00:00:00 2001 From: Jordi Vidaller Date: Fri, 17 Jul 2026 09:06:44 +0200 Subject: [PATCH 13/13] Display learn more helpcenter even without field description --- src/components/form/fields/default/RadioGroupFieldDefault.tsx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/components/form/fields/default/RadioGroupFieldDefault.tsx b/src/components/form/fields/default/RadioGroupFieldDefault.tsx index f2d6dc03b..1c4930f44 100644 --- a/src/components/form/fields/default/RadioGroupFieldDefault.tsx +++ b/src/components/form/fields/default/RadioGroupFieldDefault.tsx @@ -25,7 +25,7 @@ export const RadioGroupFieldDefault = ({ > {label} - {description && ( + {(description || fieldData.meta?.helpCenter) && ( } >