@dsptch-work/api-client 0.39.0 → 0.41.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -407,7 +407,7 @@ export type DirectUploadParameters = {
407
407
  /**
408
408
  * What the file is for, named as the endpoint that will attach it (for example `assets.vendors`). Required. It decides where the file is stored, and the signed ID this call returns is issued for that resource alone — it will not resolve at any other endpoint, so a vendor logo cannot be attached as an avatar, or an avatar as a logo.
409
409
  */
410
- resource: 'assets.items' | 'assets.items.documents' | 'assets.items.service_events' | 'assets.products' | 'assets.vendors' | 'compliance.checks' | 'internal.companies' | 'internal.company_todos' | 'internal.job_todos' | 'internal.project_todos' | 'jobs.documents' | 'pay_periods.imports.aggregate_times' | 'pay_periods.imports.dsptch_cprs' | 'pay_periods.imports.time_entries' | 'payrolls.payroll_runs.imports.paystubs' | 'payrolls.payroll_runs.imports.wide_paystubs' | 'projects.documents' | 'users';
410
+ resource: 'assets.items' | 'assets.items.documents' | 'assets.items.service_events' | 'assets.products' | 'assets.vendors' | 'compliance.checks' | 'form_submissions' | 'internal.companies' | 'internal.company_todos' | 'internal.job_todos' | 'internal.project_todos' | 'jobs.documents' | 'jobs.pwa.apprenticeship.good_faith_effort_exceptions' | 'jobs.pwa.cure_payments' | 'pay_periods.imports.aggregate_times' | 'pay_periods.imports.dsptch_cprs' | 'pay_periods.imports.time_entries' | 'payrolls.payroll_runs.imports.paystubs' | 'payrolls.payroll_runs.imports.wide_paystubs' | 'projects' | 'projects.documents' | 'users';
411
411
  /**
412
412
  * Metadata describing the file being registered, before its bytes are uploaded.
413
413
  */
@@ -1090,21 +1090,21 @@ export type CompetencyEvidenceItemResponseObject = {
1090
1090
  */
1091
1091
  kind: 'upload' | 'form_submission' | 'certification';
1092
1092
  /**
1093
- * Free-text description; null when unset, or when the caller cannot open the form or certification.
1093
+ * Free-text description; null when unset. Omitted when the caller cannot open the item's form submission or certification.
1094
1094
  */
1095
- description: string | null;
1095
+ description?: string | null;
1096
1096
  /**
1097
1097
  * Date the evidence was captured.
1098
1098
  */
1099
1099
  captured_on: string;
1100
1100
  /**
1101
- * ID of the form submission when kind is form_submission and the caller can open it; otherwise null.
1101
+ * ID of the form submission when kind is form_submission; otherwise null. Omitted when the caller cannot open it.
1102
1102
  */
1103
- form_submission_id: string | null;
1103
+ form_submission_id?: string | null;
1104
1104
  /**
1105
- * ID of the user certification when kind is certification and the caller can open it; otherwise null.
1105
+ * ID of the user certification when kind is certification; otherwise null. Omitted when the caller cannot open it.
1106
1106
  */
1107
- user_certification_id: string | null;
1107
+ user_certification_id?: string | null;
1108
1108
  /**
1109
1109
  * ID of the user who added the evidence.
1110
1110
  */
@@ -2780,6 +2780,10 @@ export type AssetsProductResponseObject = {
2780
2780
  * Human-readable product name.
2781
2781
  */
2782
2782
  name: string;
2783
+ /**
2784
+ * Free-text description of the product. Null when not set.
2785
+ */
2786
+ description: string | null;
2783
2787
  /**
2784
2788
  * Universal Product Code; unique within the company. Null when not set.
2785
2789
  */
@@ -2789,7 +2793,7 @@ export type AssetsProductResponseObject = {
2789
2793
  */
2790
2794
  internal_sku: string | null;
2791
2795
  /**
2792
- * Default low-stock reorder threshold for this product's items, applied across sites unless a site overrides it. Null when not set.
2796
+ * Default low-stock reorder threshold for this product's items, applied across sites unless a site overrides it. At least 1; null when not set.
2793
2797
  */
2794
2798
  default_minimum_quantity: number | null;
2795
2799
  /**
@@ -2843,7 +2847,7 @@ export type AssetsProductParameters = {
2843
2847
  */
2844
2848
  name: string;
2845
2849
  /**
2846
- * Free-text description of the product. Write-only — accepted here but not returned in the product response.
2850
+ * Free-text description of the product. Null when not set.
2847
2851
  */
2848
2852
  description?: string | null;
2849
2853
  /**
@@ -2863,7 +2867,7 @@ export type AssetsProductParameters = {
2863
2867
  */
2864
2868
  internal_sku?: string | null;
2865
2869
  /**
2866
- * Default low-stock reorder threshold for this product's items, applied across sites unless a site overrides it. Null when not set.
2870
+ * Default low-stock reorder threshold for this product's items, applied across sites unless a site overrides it. At least 1; null when not set.
2867
2871
  */
2868
2872
  default_minimum_quantity?: number | null;
2869
2873
  /**
@@ -2950,7 +2954,7 @@ export type AssetsProductUpdateParameters = {
2950
2954
  */
2951
2955
  internal_sku?: string | null;
2952
2956
  /**
2953
- * Default low-stock reorder threshold for this product's items, applied across sites unless a site overrides it. Null when not set.
2957
+ * Default low-stock reorder threshold for this product's items, applied across sites unless a site overrides it. At least 1; null when not set.
2954
2958
  */
2955
2959
  default_minimum_quantity?: number | null;
2956
2960
  /**
@@ -3786,6 +3790,18 @@ export type PayPeriodConfigResponseObject = {
3786
3790
  * Whether a pay date that falls on a holiday shifts to after the holiday.
3787
3791
  */
3788
3792
  paid_after_holiday: boolean;
3793
+ /**
3794
+ * Whole days from the pay period's end to payday.
3795
+ */
3796
+ arrear_days: number;
3797
+ /**
3798
+ * Whole days after the pay period's end when its time cards lock automatically; null when they never do.
3799
+ */
3800
+ time_card_auto_lock_days: number | null;
3801
+ /**
3802
+ * Time rounding in minutes, 1 or 15.
3803
+ */
3804
+ rounding_interval: 1 | 15;
3789
3805
  /**
3790
3806
  * Whether this is a demo schedule holding non-production data. Null when unset.
3791
3807
  */
@@ -3821,6 +3837,9 @@ export type PayPeriodConfigHistoryCorrectionObject = {
3821
3837
  actuals_enabled: boolean | null;
3822
3838
  requires_external_map_contributor: boolean;
3823
3839
  paid_after_holiday: boolean;
3840
+ arrear_days: number;
3841
+ time_card_auto_lock_days: number | null;
3842
+ rounding_interval: 1 | 15;
3824
3843
  demo: boolean | null;
3825
3844
  valid_from: string | null;
3826
3845
  valid_to: string | null;
@@ -3844,6 +3863,9 @@ export type PayPeriodConfigHistoryVersionObject = {
3844
3863
  actuals_enabled: boolean | null;
3845
3864
  requires_external_map_contributor: boolean;
3846
3865
  paid_after_holiday: boolean;
3866
+ arrear_days: number;
3867
+ time_card_auto_lock_days: number | null;
3868
+ rounding_interval: 1 | 15;
3847
3869
  demo: boolean | null;
3848
3870
  valid_from: string | null;
3849
3871
  valid_to: string | null;
@@ -3957,6 +3979,305 @@ export type HolidayUpdateParameters = {
3957
3979
  */
3958
3980
  count_hours_for_overtime?: boolean;
3959
3981
  };
3982
+ /**
3983
+ * Prevailing-wage / apprenticeship (PWA) contractor details for a company — EIN, DIR license, contact, and fund-administration rate used in certified-payroll exports. One record per company.
3984
+ */
3985
+ export type PwaCompanyDetailsResponseObject = {
3986
+ /**
3987
+ * Unique identifier.
3988
+ */
3989
+ id: string;
3990
+ /**
3991
+ * ID of the company these contractor details belong to. Taken from the API key; never sent in the body.
3992
+ */
3993
+ company_id: string;
3994
+ /**
3995
+ * California PWCR number (exactly 10 digits, or NA); null when unset.
3996
+ */
3997
+ pwcr_number: string | null;
3998
+ /**
3999
+ * Nine-digit federal employer identification number (EIN), digits only; globally unique; null when unset.
4000
+ */
4001
+ federal_tax_number: string | null;
4002
+ /**
4003
+ * D-U-N-S number; null when unset.
4004
+ */
4005
+ duns_number: string | null;
4006
+ /**
4007
+ * Contractor license number; null when unset.
4008
+ */
4009
+ contractor_license_number: string | null;
4010
+ /**
4011
+ * Company phone number in E.164 after save; null when unset.
4012
+ */
4013
+ company_phone: string | null;
4014
+ /**
4015
+ * Name on the contractor license; null when unset.
4016
+ */
4017
+ contractor_license_name: string | null;
4018
+ /**
4019
+ * California DIR contractor license type: CSLB, PL, or OTHER; null when unset.
4020
+ */
4021
+ dir_contractor_license_type: 'CSLB' | 'PL' | 'OTHER' | null;
4022
+ /**
4023
+ * California workers compensation policy number (max 40 characters); null when unset.
4024
+ */
4025
+ dir_worker_compensation_policy_number: string | null;
4026
+ /**
4027
+ * California DIR fund administration rate in cents, as a decimal string; null when unset. Must be sent together with dir_fund_admin_basis.
4028
+ */
4029
+ dir_fund_admin_rate_cents: string | null;
4030
+ /**
4031
+ * California DIR fund administration basis: PER_HOUR or PER_WEEK_FLAT; null when unset. Must be sent together with dir_fund_admin_rate_cents.
4032
+ */
4033
+ dir_fund_admin_basis: 'PER_HOUR' | 'PER_WEEK_FLAT' | null;
4034
+ /**
4035
+ * Union status: FULL_UNION, NOT_UNION, or MIXED; null when unset.
4036
+ */
4037
+ union_status: 'FULL_UNION' | 'NOT_UNION' | 'MIXED' | null;
4038
+ /**
4039
+ * Ownership ethnicity code: AFRICAN_AMERICAN, ASIAN, CAUCASIAN, HISPANIC, NATIVE_AMERICAN, NOT_SPECIFIED, or OTHER; null when unset.
4040
+ */
4041
+ ownership_ethnicity: 'AFRICAN_AMERICAN' | 'ASIAN' | 'CAUCASIAN' | 'HISPANIC' | 'NATIVE_AMERICAN' | 'NOT_SPECIFIED' | 'OTHER' | null;
4042
+ /**
4043
+ * Standard hours worked per day; null when unset.
4044
+ */
4045
+ standard_hours_per_day: string | null;
4046
+ /**
4047
+ * Standard hours worked per week; null when unset.
4048
+ */
4049
+ standard_hours_per_week: string | null;
4050
+ /**
4051
+ * Certified-payroll contact name; null when unset.
4052
+ */
4053
+ contact_name: string | null;
4054
+ /**
4055
+ * Certified-payroll contact title; null when unset.
4056
+ */
4057
+ contact_title: string | null;
4058
+ /**
4059
+ * Certified-payroll contact phone in E.164 after save; null when unset.
4060
+ */
4061
+ contact_phone: string | null;
4062
+ /**
4063
+ * Certified-payroll contact email; null when unset.
4064
+ */
4065
+ contact_email: string | null;
4066
+ /**
4067
+ * Contact street address line 1; required together with city, state, and zip when any address field is set; null when unset.
4068
+ */
4069
+ contact_address1: string | null;
4070
+ /**
4071
+ * Contact street address line 2; null when unset.
4072
+ */
4073
+ contact_address2: string | null;
4074
+ /**
4075
+ * Contact city; required together with the other core address fields when any address field is set; null when unset.
4076
+ */
4077
+ contact_city: string | null;
4078
+ /**
4079
+ * Contact two-letter US state code; required together with the other core address fields when any address field is set; null when unset.
4080
+ */
4081
+ contact_state: string | null;
4082
+ /**
4083
+ * Contact ZIP code; required together with the other core address fields when any address field is set; null when unset.
4084
+ */
4085
+ contact_zip: string | null;
4086
+ };
4087
+ /**
4088
+ * Create PWA contractor details for the API key's company. The company is taken from the API key. Every field is optional — send whichever your jurisdiction's certified-payroll export requires. A second create for the same company is refused.
4089
+ */
4090
+ export type PwaCompanyDetailsParameters = {
4091
+ /**
4092
+ * California PWCR number (exactly 10 digits, or NA).
4093
+ */
4094
+ pwcr_number?: string | null;
4095
+ /**
4096
+ * Nine-digit federal employer identification number (EIN), digits only. Globally unique.
4097
+ */
4098
+ federal_tax_number?: string | null;
4099
+ /**
4100
+ * D-U-N-S number.
4101
+ */
4102
+ duns_number?: string | null;
4103
+ /**
4104
+ * Contractor license number.
4105
+ */
4106
+ contractor_license_number?: string | null;
4107
+ /**
4108
+ * Company phone number.
4109
+ */
4110
+ company_phone?: string | null;
4111
+ /**
4112
+ * Name on the contractor license.
4113
+ */
4114
+ contractor_license_name?: string | null;
4115
+ /**
4116
+ * California DIR contractor license type: CSLB, PL, or OTHER.
4117
+ */
4118
+ dir_contractor_license_type?: 'CSLB' | 'PL' | 'OTHER' | null;
4119
+ /**
4120
+ * California workers compensation policy number (max 40 characters).
4121
+ */
4122
+ dir_worker_compensation_policy_number?: string | null;
4123
+ /**
4124
+ * California DIR fund administration rate in cents, as a decimal string. Must be sent together with dir_fund_admin_basis.
4125
+ */
4126
+ dir_fund_admin_rate_cents?: string | null;
4127
+ /**
4128
+ * California DIR fund administration basis: PER_HOUR or PER_WEEK_FLAT. Must be sent together with dir_fund_admin_rate_cents.
4129
+ */
4130
+ dir_fund_admin_basis?: 'PER_HOUR' | 'PER_WEEK_FLAT' | null;
4131
+ /**
4132
+ * Union status: FULL_UNION, NOT_UNION, or MIXED.
4133
+ */
4134
+ union_status?: 'FULL_UNION' | 'NOT_UNION' | 'MIXED' | null;
4135
+ /**
4136
+ * Ownership ethnicity code: AFRICAN_AMERICAN, ASIAN, CAUCASIAN, HISPANIC, NATIVE_AMERICAN, NOT_SPECIFIED, or OTHER.
4137
+ */
4138
+ ownership_ethnicity?: 'AFRICAN_AMERICAN' | 'ASIAN' | 'CAUCASIAN' | 'HISPANIC' | 'NATIVE_AMERICAN' | 'NOT_SPECIFIED' | 'OTHER' | null;
4139
+ /**
4140
+ * Standard hours worked per day.
4141
+ */
4142
+ standard_hours_per_day?: string | null;
4143
+ /**
4144
+ * Standard hours worked per week.
4145
+ */
4146
+ standard_hours_per_week?: string | null;
4147
+ /**
4148
+ * Certified-payroll contact name.
4149
+ */
4150
+ contact_name?: string | null;
4151
+ /**
4152
+ * Certified-payroll contact title.
4153
+ */
4154
+ contact_title?: string | null;
4155
+ /**
4156
+ * Certified-payroll contact phone.
4157
+ */
4158
+ contact_phone?: string | null;
4159
+ /**
4160
+ * Certified-payroll contact email.
4161
+ */
4162
+ contact_email?: string | null;
4163
+ /**
4164
+ * Contact street address line 1; required together with city, state, and zip when any address field is set.
4165
+ */
4166
+ contact_address1?: string | null;
4167
+ /**
4168
+ * Contact street address line 2.
4169
+ */
4170
+ contact_address2?: string | null;
4171
+ /**
4172
+ * Contact city; required together with the other core address fields when any address field is set.
4173
+ */
4174
+ contact_city?: string | null;
4175
+ /**
4176
+ * Contact two-letter US state code; required together with the other core address fields when any address field is set.
4177
+ */
4178
+ contact_state?: string | null;
4179
+ /**
4180
+ * Contact ZIP code; required together with the other core address fields when any address field is set.
4181
+ */
4182
+ contact_zip?: string | null;
4183
+ };
4184
+ /**
4185
+ * Update PWA contractor details. The company is taken from the API key. Every field is optional — send only what changes. The company is fixed at creation.
4186
+ */
4187
+ export type PwaCompanyDetailsUpdateParameters = {
4188
+ /**
4189
+ * California PWCR number (exactly 10 digits, or NA).
4190
+ */
4191
+ pwcr_number?: string | null;
4192
+ /**
4193
+ * Nine-digit federal employer identification number (EIN), digits only. Globally unique.
4194
+ */
4195
+ federal_tax_number?: string | null;
4196
+ /**
4197
+ * D-U-N-S number.
4198
+ */
4199
+ duns_number?: string | null;
4200
+ /**
4201
+ * Contractor license number.
4202
+ */
4203
+ contractor_license_number?: string | null;
4204
+ /**
4205
+ * Company phone number.
4206
+ */
4207
+ company_phone?: string | null;
4208
+ /**
4209
+ * Name on the contractor license.
4210
+ */
4211
+ contractor_license_name?: string | null;
4212
+ /**
4213
+ * California DIR contractor license type: CSLB, PL, or OTHER.
4214
+ */
4215
+ dir_contractor_license_type?: 'CSLB' | 'PL' | 'OTHER' | null;
4216
+ /**
4217
+ * California workers compensation policy number (max 40 characters).
4218
+ */
4219
+ dir_worker_compensation_policy_number?: string | null;
4220
+ /**
4221
+ * California DIR fund administration rate in cents, as a decimal string. Must be sent together with dir_fund_admin_basis.
4222
+ */
4223
+ dir_fund_admin_rate_cents?: string | null;
4224
+ /**
4225
+ * California DIR fund administration basis: PER_HOUR or PER_WEEK_FLAT. Must be sent together with dir_fund_admin_rate_cents.
4226
+ */
4227
+ dir_fund_admin_basis?: 'PER_HOUR' | 'PER_WEEK_FLAT' | null;
4228
+ /**
4229
+ * Union status: FULL_UNION, NOT_UNION, or MIXED.
4230
+ */
4231
+ union_status?: 'FULL_UNION' | 'NOT_UNION' | 'MIXED' | null;
4232
+ /**
4233
+ * Ownership ethnicity code: AFRICAN_AMERICAN, ASIAN, CAUCASIAN, HISPANIC, NATIVE_AMERICAN, NOT_SPECIFIED, or OTHER.
4234
+ */
4235
+ ownership_ethnicity?: 'AFRICAN_AMERICAN' | 'ASIAN' | 'CAUCASIAN' | 'HISPANIC' | 'NATIVE_AMERICAN' | 'NOT_SPECIFIED' | 'OTHER' | null;
4236
+ /**
4237
+ * Standard hours worked per day.
4238
+ */
4239
+ standard_hours_per_day?: string | null;
4240
+ /**
4241
+ * Standard hours worked per week.
4242
+ */
4243
+ standard_hours_per_week?: string | null;
4244
+ /**
4245
+ * Certified-payroll contact name.
4246
+ */
4247
+ contact_name?: string | null;
4248
+ /**
4249
+ * Certified-payroll contact title.
4250
+ */
4251
+ contact_title?: string | null;
4252
+ /**
4253
+ * Certified-payroll contact phone.
4254
+ */
4255
+ contact_phone?: string | null;
4256
+ /**
4257
+ * Certified-payroll contact email.
4258
+ */
4259
+ contact_email?: string | null;
4260
+ /**
4261
+ * Contact street address line 1; required together with city, state, and zip when any address field is set.
4262
+ */
4263
+ contact_address1?: string | null;
4264
+ /**
4265
+ * Contact street address line 2.
4266
+ */
4267
+ contact_address2?: string | null;
4268
+ /**
4269
+ * Contact city; required together with the other core address fields when any address field is set.
4270
+ */
4271
+ contact_city?: string | null;
4272
+ /**
4273
+ * Contact two-letter US state code; required together with the other core address fields when any address field is set.
4274
+ */
4275
+ contact_state?: string | null;
4276
+ /**
4277
+ * Contact ZIP code; required together with the other core address fields when any address field is set.
4278
+ */
4279
+ contact_zip?: string | null;
4280
+ };
3960
4281
  /**
3961
4282
  * Prevailing-wage / apprenticeship (PWA) compliance details for a worker at a company — home address, demographics, and jurisdiction-specific fields used in certified-payroll and compliance exports. One record per company/user pair.
3962
4283
  */
@@ -4392,7 +4713,7 @@ export type JobResponseObject = {
4392
4713
  */
4393
4714
  end_time: string | null;
4394
4715
  /**
4395
- * Purchase order number for the job; null when unset.
4716
+ * The job's External ID; null when unset. A new or changed value must be unique within the creating company, but jobs saved before that rule may still share one.
4396
4717
  */
4397
4718
  purchase_order_number: string | null;
4398
4719
  time_card_start_day: TimeCardStartDay;
@@ -4649,7 +4970,7 @@ export type JobCreateParameters = {
4649
4970
  */
4650
4971
  requested_by_company_id?: string;
4651
4972
  /**
4652
- * Purchase order number for the job; null when unset.
4973
+ * The job's External ID, unique within the creating company. Leading and trailing spaces are removed, and a value another job in that company already holds, compared case-sensitively, answers 422. A job copied from a template does not inherit the template's value. Null or a blank value stores none.
4653
4974
  */
4654
4975
  purchase_order_number?: string | null;
4655
4976
  /**
@@ -4890,7 +5211,7 @@ export type JobUpdateParameters = {
4890
5211
  */
4891
5212
  requested_by_company_id?: string;
4892
5213
  /**
4893
- * Purchase order number for the job; null when unset.
5214
+ * The job's External ID, unique within the creating company. Leading and trailing spaces are removed, and a value another job in that company already holds, compared case-sensitively, answers 422. A job copied from a template does not inherit the template's value. Null or a blank value stores none.
4894
5215
  */
4895
5216
  purchase_order_number?: string | null;
4896
5217
  /**
@@ -5572,7 +5893,7 @@ export type UserParameters = {
5572
5893
  */
5573
5894
  skip_invite?: boolean;
5574
5895
  /**
5575
- * First day of employment (YYYY-MM-DD). Sets the start of the employment record; defaults to today when omitted. Null, blank text, or any other form answers 422.
5896
+ * First day of employment (YYYY-MM-DD). Sets the start of the employment record; defaults to today in your company's time zone when omitted. Null, blank text, or any other form answers 422.
5576
5897
  */
5577
5898
  hire_date?: string;
5578
5899
  /**
@@ -5823,17 +6144,17 @@ export type TimeEntryResponseObject = {
5823
6144
  */
5824
6145
  incentive_pay_one_five_x_minutes_worked: number;
5825
6146
  /**
5826
- * Base hourly rate in cents, serialized as a string to preserve precision; the underlying column is arbitrary-precision numeric, so values may include fractional cents. Null when no rate is set.
6147
+ * Base hourly rate in cents, serialized as a string to preserve precision; the underlying column is arbitrary-precision numeric, so values may include fractional cents. Null when no rate is set. Present for company keys and for administrators of the company whose pay schedule holds the entry; omitted for other user keys.
5827
6148
  */
5828
- hourly_rate_cents: string | null;
6149
+ hourly_rate_cents?: string | null;
5829
6150
  /**
5830
- * ISO currency code for the money fields, delegated from the time card's pay schedule.
6151
+ * ISO currency code for the money fields, delegated from the time card's pay schedule. Present for company keys and for administrators of the company whose pay schedule holds the entry; omitted for other user keys.
5831
6152
  */
5832
- currency: string;
6153
+ currency?: string;
5833
6154
  /**
5834
- * Where the base rate came from: one of user_default, position, prevailing_wage, or custom; null when no rate is set. (The schema types this as a free-form nullable string; the value set is defined by the model enum.)
6155
+ * Where the base rate came from: one of user_default, position, prevailing_wage, or custom; null when no rate is set. (The schema types this as a free-form nullable string; the value set is defined by the model enum.) Present for company keys and for administrators of the company whose pay schedule holds the entry; omitted for other user keys.
5835
6156
  */
5836
- hourly_rate_src_type: string | null;
6157
+ hourly_rate_src_type?: string | null;
5837
6158
  /**
5838
6159
  * Id of the pay period containing this entry (resolved through the time card).
5839
6160
  */
@@ -6068,6 +6389,10 @@ export type FormDefinitionObject = {
6068
6389
  * When the record was created (ISO 8601).
6069
6390
  */
6070
6391
  created_at: string;
6392
+ /**
6393
+ * When the form definition was last changed (ISO 8601). The index filters on this value.
6394
+ */
6395
+ updated_at: string;
6071
6396
  };
6072
6397
  /**
6073
6398
  * A page of form definitions. A form definition is a SurveyJS form template built and versioned in the web app's form builder, so this API is read-only.
@@ -6113,7 +6438,7 @@ export type FormSubmissionIndexObject = {
6113
6438
  }>;
6114
6439
  };
6115
6440
  /**
6116
- * A single form submission with resolved answers, returned by both show and create.
6441
+ * A single form submission with resolved answers, returned by show, create, and update.
6117
6442
  */
6118
6443
  export type FormSubmissionResponseObject = {
6119
6444
  /**
@@ -6181,7 +6506,7 @@ export type FormSubmissionCreateParameters = {
6181
6506
  */
6182
6507
  user_id: string;
6183
6508
  /**
6184
- * Answer object keyed by SurveyJS valueName when set, otherwise name. Use question choice values and GlobalIDs for DSPTCH reference questions. Missing or null returns 422. The API validates recursive structure and primitive types. Choice fields accept strings, which are stored unchanged. Choice membership, required answers, dates, and SurveyJS logic are not validated.
6509
+ * Answer object keyed by SurveyJS valueName when set, otherwise name. Use question choice values and GlobalIDs for DSPTCH reference questions. Missing or null returns 422. The API validates recursive structure and primitive types. Choice fields accept strings, which are stored unchanged. Choice membership, required answers, dates, and SurveyJS logic are not validated. File and signature answers take signed IDs from POST /api/v1/direct_uploads with resource form_submissions, never file contents. A file answer is an array of signed IDs, and a signature answer is one. An image file upload must be no larger than 10 MiB. A signature upload must be a PNG or JPEG image, declared as image/png or image/jpeg to match its bytes or as application/octet-stream, no larger than 256 KiB, and no more than 2,000 pixels wide or tall. A submission's signature answers may hold at most 2 MiB together, and an upload counts once for each answer naming it.
6185
6510
  */
6186
6511
  json: {
6187
6512
  [key: string]: unknown;
@@ -6191,6 +6516,21 @@ export type FormSubmissionCreateParameters = {
6191
6516
  */
6192
6517
  timezone?: string;
6193
6518
  };
6519
+ /**
6520
+ * Request body for updating a submission's timezone and answers. Send only fields to change; omitted fields remain unchanged. form_definition_id and user_id cannot change.
6521
+ */
6522
+ export type FormSubmissionUpdateParameters = {
6523
+ /**
6524
+ * Optional IANA timezone such as America/Chicago. Omit to leave it unchanged. A non-string value answers 422.
6525
+ */
6526
+ timezone?: string;
6527
+ /**
6528
+ * SurveyJS answer tree as stored, including file-answer objects with name, type, and content. File content is rewritten through the same writer the web uses. A value that is not an object answers 422.
6529
+ */
6530
+ json?: {
6531
+ [key: string]: unknown;
6532
+ };
6533
+ };
6194
6534
  /**
6195
6535
  * Request body for updating a worker's employment at your company. Corrects administrative fields (employment type, title, manager, payroll id, hire date, and time-and-attendance enrollment) across the whole employment history, and changes the custom-field values it lists. For time-effective pay changes, use the scheduled-changes endpoints instead. A value of the wrong JSON type, a null for a field that is not nullable, or a value outside a listed set answers 422 at its pointer, and nothing is written.
6196
6536
  */
@@ -6885,7 +7225,7 @@ export type AggregateTimeImportResponseObject = {
6885
7225
  */
6886
7226
  status: 'pending' | 'processing' | 'processed' | 'success' | 'failed' | 'superseded' | 'withdrawn';
6887
7227
  /**
6888
- * How many rows passed validation and were prepared for writing. On a `success` import that is also how many rows were written. On a `failed` one it is not — the import writes all of its rows in a single transaction, so a failure part-way through undoes every write already made while this count still reports every row that had been prepared.
7228
+ * How many records the import wrote, not how many rows the file held. It counts job time cards. One job time card is written per worker and job on the period, so several file rows for the same worker and job make one and the count can be lower than the number of rows in the file. On a `success` import that is the number written. On a `failed` import nothing is kept, because the import writes in a single transaction and a failure undoes every write, so the count is only how many had been built when it failed. It is `0` while the import is `pending`.
6889
7229
  */
6890
7230
  processed_rows_count: number;
6891
7231
  /**
@@ -6935,7 +7275,7 @@ export type DsptchCprImportResponseObject = {
6935
7275
  */
6936
7276
  status: 'pending' | 'processing' | 'processed' | 'success' | 'failed' | 'superseded' | 'withdrawn';
6937
7277
  /**
6938
- * How many rows passed validation and were prepared for writing. On a `success` import that is also how many rows were written. On a `failed` one it is not — the import writes all of its rows in a single transaction, so a failure part-way through undoes every write already made while this count still reports every row that had been prepared.
7278
+ * How many records the import wrote, not how many rows the file held. It counts job time cards. One job time card is written per worker and job on the period, so several file rows for the same worker and job make one and the count can be lower than the number of rows in the file. On a `success` import that is the number written. On a `failed` import nothing is kept, because the import writes in a single transaction and a failure undoes every write, so the count is only how many had been built when it failed. It is `0` while the import is `pending`.
6939
7279
  */
6940
7280
  processed_rows_count: number;
6941
7281
  /**
@@ -6985,7 +7325,7 @@ export type PaystubImportResponseObject = {
6985
7325
  */
6986
7326
  status: 'pending' | 'processing' | 'processed' | 'success' | 'failed' | 'superseded' | 'withdrawn';
6987
7327
  /**
6988
- * How many rows passed validation and were prepared for writing. On a `success` import that is also how many rows were written. On a `failed` one it is not — the import writes all of its rows in a single transaction, so a failure part-way through undoes every write already made while this count still reports every row that had been prepared.
7328
+ * How many records the import wrote, not how many rows the file held. It counts paystub line items. Each file row becomes one line item, and a paystub holds the line items of one worker, so the count is not the number of paystubs. On a `success` import that is the number written. On a `failed` import nothing is kept, because the import writes in a single transaction and a failure undoes every write, so the count is only how many had been built when it failed. It is `0` while the import is `pending`.
6989
7329
  */
6990
7330
  processed_rows_count: number;
6991
7331
  /**
@@ -7035,7 +7375,7 @@ export type WidePaystubImportResponseObject = {
7035
7375
  */
7036
7376
  status: 'pending' | 'processing' | 'processed' | 'success' | 'failed' | 'superseded' | 'withdrawn';
7037
7377
  /**
7038
- * How many rows passed validation and were prepared for writing. On a `success` import that is also how many rows were written. On a `failed` one it is not — the import writes all of its rows in a single transaction, so a failure part-way through undoes every write already made while this count still reports every row that had been prepared.
7378
+ * How many records the import wrote, not how many rows the file held. It counts paystubs. Each file row names one worker and becomes one paystub, unless it has no amounts, in which case it writes nothing. On a `success` import that is the number written. On a `failed` import nothing is kept, because the import writes in a single transaction and a failure undoes every write, so the count is only how many had been built when it failed. It is `0` while the import is `pending`.
7039
7379
  */
7040
7380
  processed_rows_count: number;
7041
7381
  /**
@@ -7083,7 +7423,7 @@ export type TimeEntryImportResponseObject = {
7083
7423
  */
7084
7424
  status: 'pending' | 'processing' | 'processed' | 'success' | 'failed' | 'superseded' | 'withdrawn';
7085
7425
  /**
7086
- * How many rows passed validation and were prepared for writing. On a `success` import that is also how many rows were written. On a `failed` one it is not — the import writes all of its rows in a single transaction, so a failure part-way through undoes every write already made while this count still reports every row that had been prepared.
7426
+ * How many records the import wrote, not how many rows the file held. It counts time entries. Each file row becomes one time entry. On a `success` import that is the number written. On a `failed` import nothing is kept, because the import writes in a single transaction and a failure undoes every write, so the count is only how many had been built when it failed. It is `0` while the import is `pending`.
7087
7427
  */
7088
7428
  processed_rows_count: number;
7089
7429
  /**
@@ -7741,6 +8081,44 @@ export type TimeOffRequestsResponseObject = {
7741
8081
  */
7742
8082
  data: Array<TimeOffRequestResponseObject>;
7743
8083
  };
8084
+ /**
8085
+ * Create a time-off request for a worker. Instants must be the beginning of the first day and the end of the last day in the company's pay-schedule timezone (company timezone, else UTC). When the filer is the worker the request is born pending; otherwise it is born approved with the filer stamped as reviewer, and an Absence is built in the background.
8086
+ */
8087
+ export type TimeOffRequestParameters = {
8088
+ /**
8089
+ * ID of the worker the request is for. Must be visible to the API key and employed by the company. Required.
8090
+ */
8091
+ user_id: string;
8092
+ /**
8093
+ * ID of the user filing the request. Must be visible to the API key. Required.
8094
+ */
8095
+ performed_by_user_id: string;
8096
+ /**
8097
+ * Kind of non-working time. Required.
8098
+ */
8099
+ absence_type: 'rest_and_recovery' | 'vacation' | 'bereavement' | 'ca_covid_19_sick' | 'custom' | 'jury_duty' | 'unpaid' | 'training' | 'bench';
8100
+ /**
8101
+ * When the requested absence starts (ISO 8601 with a UTC offset). Must be the beginning of the first day in the pay-schedule timezone. Required.
8102
+ */
8103
+ start_time: string;
8104
+ /**
8105
+ * When the requested absence ends (ISO 8601 with a UTC offset). Must be the end of the last day in the pay-schedule timezone. Required.
8106
+ */
8107
+ end_time: string;
8108
+ };
8109
+ /**
8110
+ * Approve, deny, or cancel a pending time-off request. The named filer is the reviewer: only the worker may cancel, and nobody may approve or deny their own row. Approving enqueues the Absence build.
8111
+ */
8112
+ export type TimeOffRequestReviewParameters = {
8113
+ /**
8114
+ * Outcome to record: approved, denied, or cancelled. Required.
8115
+ */
8116
+ status: 'approved' | 'denied' | 'cancelled';
8117
+ /**
8118
+ * ID of the user performing the review. Must be visible to the API key. Required.
8119
+ */
8120
+ performed_by_user_id: string;
8121
+ };
7744
8122
  /**
7745
8123
  * Request body for locking or unlocking a time card.
7746
8124
  */
@@ -8255,6 +8633,19 @@ export type ProjectResponseObject = {
8255
8633
  * Identifiers of companies participating in this project.
8256
8634
  */
8257
8635
  participating_company_ids: Array<string>;
8636
+ /**
8637
+ * The project's managers, each as a minimal object; empty when the project has no managers.
8638
+ */
8639
+ manager_users: Array<{
8640
+ /**
8641
+ * ID of the manager user.
8642
+ */
8643
+ id: string;
8644
+ /**
8645
+ * Name of the manager user.
8646
+ */
8647
+ name: string;
8648
+ }>;
8258
8649
  /**
8259
8650
  * Federal PWA tracking mode: `all` (prevailing wage + apprenticeship), `pw_only` (prevailing wage), `ap_only` (apprenticeship), or `none`.
8260
8651
  */
@@ -8311,6 +8702,81 @@ export type ProjectResponseObject = {
8311
8702
  * IRA placed-in-service date as an ISO8601 date, or null; only meaningful while federal PWA tracking is enabled.
8312
8703
  */
8313
8704
  placed_in_service_date: string | null;
8705
+ /**
8706
+ * Prevailing-wage lock-in supporting document, or null when none is attached.
8707
+ */
8708
+ lock_in_date_doc: {
8709
+ /**
8710
+ * ID of the evidence document; unchanged when the slot's file is replaced.
8711
+ */
8712
+ id: string;
8713
+ /**
8714
+ * Stored name of the uploaded file.
8715
+ */
8716
+ filename: string;
8717
+ /**
8718
+ * MIME type of the file; null when not recorded.
8719
+ */
8720
+ content_type: string | null;
8721
+ /**
8722
+ * Size of the file in bytes.
8723
+ */
8724
+ byte_size: number;
8725
+ /**
8726
+ * A URL to download the file.
8727
+ */
8728
+ url: string;
8729
+ } | null;
8730
+ /**
8731
+ * IRA beginning-of-construction supporting document, or null when none is attached.
8732
+ */
8733
+ beginning_of_construction_doc: {
8734
+ /**
8735
+ * ID of the evidence document; unchanged when the slot's file is replaced.
8736
+ */
8737
+ id: string;
8738
+ /**
8739
+ * Stored name of the uploaded file.
8740
+ */
8741
+ filename: string;
8742
+ /**
8743
+ * MIME type of the file; null when not recorded.
8744
+ */
8745
+ content_type: string | null;
8746
+ /**
8747
+ * Size of the file in bytes.
8748
+ */
8749
+ byte_size: number;
8750
+ /**
8751
+ * A URL to download the file.
8752
+ */
8753
+ url: string;
8754
+ } | null;
8755
+ /**
8756
+ * IRA placed-in-service supporting document, or null when none is attached.
8757
+ */
8758
+ placed_in_service_doc: {
8759
+ /**
8760
+ * ID of the evidence document; unchanged when the slot's file is replaced.
8761
+ */
8762
+ id: string;
8763
+ /**
8764
+ * Stored name of the uploaded file.
8765
+ */
8766
+ filename: string;
8767
+ /**
8768
+ * MIME type of the file; null when not recorded.
8769
+ */
8770
+ content_type: string | null;
8771
+ /**
8772
+ * Size of the file in bytes.
8773
+ */
8774
+ byte_size: number;
8775
+ /**
8776
+ * A URL to download the file.
8777
+ */
8778
+ url: string;
8779
+ } | null;
8314
8780
  /**
8315
8781
  * Time the project was created, as an ISO8601 date-time string.
8316
8782
  */
@@ -8321,7 +8787,7 @@ export type ProjectResponseObject = {
8321
8787
  updated_at: string;
8322
8788
  };
8323
8789
  /**
8324
- * Request body for creating a project. `name` and `created_by_user_id` are required, and omitting either returns 400; the creator must be a member of the owning company. The owning company is inferred from the API key and is not part of the body. Undeclared body keys return 400, and a null for a field that is not nullable or a wrongly typed value returns 422 at its pointer, before any project or relationship is saved.
8790
+ * Request body for creating a project. `name` and `created_by_user_id` are required, and omitting either returns 400; the creator must be a member of the owning company. The owning company is inferred from the API key and is not part of the body. IRA evidence files attach through `lock_in_date_doc_signed_id`, `beginning_of_construction_doc_signed_id`, and `placed_in_service_doc_signed_id` (purpose-bound `projects` signed ids); when any of those keys is present, `performed_by_user_id` is required. Undeclared body keys return 400, and a null for a field that is not nullable or a wrongly typed value returns 422 at its pointer, before any project or relationship is saved.
8325
8791
  */
8326
8792
  export type ProjectParameters = {
8327
8793
  /**
@@ -8344,6 +8810,10 @@ export type ProjectParameters = {
8344
8810
  * Complete desired set of unique nonblank participating company IDs. Omit to preserve the set; send an empty array to clear it. Null, null members, wrong types, blank IDs, and duplicate IDs answer 422 before any project or relationship is saved. Remove a participant's jobs before removing it from this set.
8345
8811
  */
8346
8812
  participating_company_ids?: Array<string>;
8813
+ /**
8814
+ * Complete desired set of unique nonblank manager user IDs. Omit to preserve the set; send an empty array to clear it. Null, null members, wrong types, blank IDs, and duplicate IDs answer 422 before any project or relationship is saved. Each id must name a manager of the owning company.
8815
+ */
8816
+ manager_user_ids?: Array<string>;
8347
8817
  /**
8348
8818
  * Schedule start date as an ISO8601 date (YYYY-MM-DD), or null; requires tz_name to be set. Any other string, a timestamp included, answers 422.
8349
8819
  */
@@ -8404,13 +8874,29 @@ export type ProjectParameters = {
8404
8874
  * IRA placed-in-service date as an ISO8601 date (YYYY-MM-DD); any other string, a timestamp included, answers 422. Applies only while `federal_pwa_mode` is not `none` — sending it while federal tracking is off, even as null, returns 422, and switching to `none` clears the stored value.
8405
8875
  */
8406
8876
  placed_in_service_date?: string | null;
8877
+ /**
8878
+ * A signed_id from POST /api/v1/direct_uploads registered for `projects` (not `projects.documents`). Omit the key to keep the stored file; a signed id creates or replaces the named-slot document. Null or a blank string answers 422 — there is no clear. When any evidence signed id is present, `performed_by_user_id` is required.
8879
+ */
8880
+ lock_in_date_doc_signed_id?: string;
8881
+ /**
8882
+ * A signed_id from POST /api/v1/direct_uploads registered for `projects` (not `projects.documents`). Omit the key to keep the stored file; a signed id creates or replaces the named-slot document. Null or a blank string answers 422 — there is no clear. When any evidence signed id is present, `performed_by_user_id` is required.
8883
+ */
8884
+ beginning_of_construction_doc_signed_id?: string;
8885
+ /**
8886
+ * A signed_id from POST /api/v1/direct_uploads registered for `projects` (not `projects.documents`). Omit the key to keep the stored file; a signed id creates or replaces the named-slot document. Null or a blank string answers 422 — there is no clear. When any evidence signed id is present, `performed_by_user_id` is required.
8887
+ */
8888
+ placed_in_service_doc_signed_id?: string;
8889
+ /**
8890
+ * ID of the user recorded as creator of a newly attached IRA evidence document. Required when any `*_doc_signed_id` is present (omission then answers 400); ignored when every evidence signed id is omitted. Supplied null, a blank ID, or a wrong type answers 422. A user the API key cannot see answers 404 `reference_not_found`. Replacing a populated slot keeps the original creator.
8891
+ */
8892
+ performed_by_user_id?: string;
8407
8893
  /**
8408
8894
  * User recorded as the project's creator; must be a member of the owning company. Required on create and immutable thereafter. Omission answers 400; null, a blank ID, or a wrong type answers 422. Send it only on create; every update that includes it returns 400, even when unchanged.
8409
8895
  */
8410
8896
  created_by_user_id: string;
8411
8897
  };
8412
8898
  /**
8413
- * Request body for updating a project. Every field is optional; omit a field to preserve its current value. The resulting project must still satisfy conditional PWA, regional, and schedule validation rules. `created_by_user_id` is create-only; omit it on PATCH. Every update that includes it returns 400, even when unchanged. Undeclared body keys return 400, and a null for a field that is not nullable or a wrongly typed value returns 422 at its pointer, before any project or relationship changes.
8899
+ * Request body for updating a project. Every field is optional; omit a field to preserve its current value. The resulting project must still satisfy conditional PWA, regional, and schedule validation rules. `created_by_user_id` is create-only; omit it on PATCH. Every update that includes it returns 400, even when unchanged. IRA evidence files attach through the same `*_doc_signed_id` keys as create; omit a key to keep the stored file, and send `performed_by_user_id` when any signed id is present. Undeclared body keys return 400, and a null for a field that is not nullable or a wrongly typed value returns 422 at its pointer, before any project or relationship changes.
8414
8900
  */
8415
8901
  export type ProjectUpdateParameters = {
8416
8902
  /**
@@ -8433,6 +8919,10 @@ export type ProjectUpdateParameters = {
8433
8919
  * Complete desired set of unique nonblank participating company IDs. Omit to preserve the set; send an empty array to clear it. Null, null members, wrong types, blank IDs, and duplicate IDs answer 422 before any project or relationship is saved. Remove a participant's jobs before removing it from this set.
8434
8920
  */
8435
8921
  participating_company_ids?: Array<string>;
8922
+ /**
8923
+ * Complete desired set of unique nonblank manager user IDs. Omit to preserve the set; send an empty array to clear it. Null, null members, wrong types, blank IDs, and duplicate IDs answer 422 before any project or relationship is saved. Each id must name a manager of the owning company.
8924
+ */
8925
+ manager_user_ids?: Array<string>;
8436
8926
  /**
8437
8927
  * Schedule start date as an ISO8601 date (YYYY-MM-DD), or null; requires tz_name to be set. Any other string, a timestamp included, answers 422.
8438
8928
  */
@@ -8493,6 +8983,22 @@ export type ProjectUpdateParameters = {
8493
8983
  * IRA placed-in-service date as an ISO8601 date (YYYY-MM-DD); any other string, a timestamp included, answers 422. Applies only while `federal_pwa_mode` is not `none` — sending it while federal tracking is off, even as null, returns 422, and switching to `none` clears the stored value.
8494
8984
  */
8495
8985
  placed_in_service_date?: string | null;
8986
+ /**
8987
+ * A signed_id from POST /api/v1/direct_uploads registered for `projects` (not `projects.documents`). Omit the key to keep the stored file; a signed id creates or replaces the named-slot document. Null or a blank string answers 422 — there is no clear. When any evidence signed id is present, `performed_by_user_id` is required.
8988
+ */
8989
+ lock_in_date_doc_signed_id?: string;
8990
+ /**
8991
+ * A signed_id from POST /api/v1/direct_uploads registered for `projects` (not `projects.documents`). Omit the key to keep the stored file; a signed id creates or replaces the named-slot document. Null or a blank string answers 422 — there is no clear. When any evidence signed id is present, `performed_by_user_id` is required.
8992
+ */
8993
+ beginning_of_construction_doc_signed_id?: string;
8994
+ /**
8995
+ * A signed_id from POST /api/v1/direct_uploads registered for `projects` (not `projects.documents`). Omit the key to keep the stored file; a signed id creates or replaces the named-slot document. Null or a blank string answers 422 — there is no clear. When any evidence signed id is present, `performed_by_user_id` is required.
8996
+ */
8997
+ placed_in_service_doc_signed_id?: string;
8998
+ /**
8999
+ * ID of the user recorded as creator of a newly attached IRA evidence document. Required when any `*_doc_signed_id` is present (omission then answers 400); ignored when every evidence signed id is omitted. Supplied null, a blank ID, or a wrong type answers 422. A user the API key cannot see answers 404 `reference_not_found`. Replacing a populated slot keeps the original creator.
9000
+ */
9001
+ performed_by_user_id?: string;
8496
9002
  };
8497
9003
  /**
8498
9004
  * A project–site assignment: the join linking a project to a site, optionally scoping which of that site's features apply. Path `{id}` is this join's id, not the Site's. Not included on project GET.
@@ -9184,6 +9690,7 @@ export type TodoInboxTodoResponseObject = {
9184
9690
  completed: boolean;
9185
9691
  priority: 'critical' | 'high' | 'medium' | 'low' | null;
9186
9692
  category: 'apprenticeship' | 'certified_payroll' | 'company' | 'job' | 'payroll' | 'project' | 'regional' | 'tax_credit' | 'timekeeping' | 'worker';
9693
+ approval_status: 'pending' | 'approved' | 'rejected' | null;
9187
9694
  task_assignee_user_ids: Array<string>;
9188
9695
  description: RichTextObject;
9189
9696
  time_due: string | null;
@@ -10086,7 +10593,7 @@ export type JobDocumentUpdateParameters = {
10086
10593
  url?: string | null;
10087
10594
  };
10088
10595
  /**
10089
- * A good-faith-effort exception on a job — a record that the employer requested apprentices from a registered program and did not receive the full request, or that no qualifying program existed. Read-only. Does not include supporting document slots.
10596
+ * A good-faith-effort exception on a job — a record that the employer requested apprentices from a registered program and did not receive the full request, or that no qualifying program existed. Proof files are always present as `null` or a document object; omit a signed-id key on write to keep the stored file.
10090
10597
  */
10091
10598
  export type JobGoodFaithEffortExceptionResponseObject = {
10092
10599
  /**
@@ -10137,6 +10644,106 @@ export type JobGoodFaithEffortExceptionResponseObject = {
10137
10644
  * The program's reply — `no_response`, `denied`, or `partial`. Null when `program_unavailable` is true.
10138
10645
  */
10139
10646
  response: 'no_response' | 'denied' | 'partial' | null;
10647
+ /**
10648
+ * The request sent to the apprenticeship program, or null when none is attached.
10649
+ */
10650
+ request_letter: {
10651
+ /**
10652
+ * ID of the evidence document; unchanged when the slot's file is replaced.
10653
+ */
10654
+ id: string;
10655
+ /**
10656
+ * Stored name of the uploaded file.
10657
+ */
10658
+ filename: string;
10659
+ /**
10660
+ * MIME type of the file; null when not recorded.
10661
+ */
10662
+ content_type: string | null;
10663
+ /**
10664
+ * Size of the file in bytes.
10665
+ */
10666
+ byte_size: number;
10667
+ /**
10668
+ * A URL to download the file.
10669
+ */
10670
+ url: string;
10671
+ } | null;
10672
+ /**
10673
+ * Proof that the request was submitted, or null when none is attached.
10674
+ */
10675
+ submission_proof: {
10676
+ /**
10677
+ * ID of the evidence document; unchanged when the slot's file is replaced.
10678
+ */
10679
+ id: string;
10680
+ /**
10681
+ * Stored name of the uploaded file.
10682
+ */
10683
+ filename: string;
10684
+ /**
10685
+ * MIME type of the file; null when not recorded.
10686
+ */
10687
+ content_type: string | null;
10688
+ /**
10689
+ * Size of the file in bytes.
10690
+ */
10691
+ byte_size: number;
10692
+ /**
10693
+ * A URL to download the file.
10694
+ */
10695
+ url: string;
10696
+ } | null;
10697
+ /**
10698
+ * The program's reply document, or null when none is attached.
10699
+ */
10700
+ response_letter: {
10701
+ /**
10702
+ * ID of the evidence document; unchanged when the slot's file is replaced.
10703
+ */
10704
+ id: string;
10705
+ /**
10706
+ * Stored name of the uploaded file.
10707
+ */
10708
+ filename: string;
10709
+ /**
10710
+ * MIME type of the file; null when not recorded.
10711
+ */
10712
+ content_type: string | null;
10713
+ /**
10714
+ * Size of the file in bytes.
10715
+ */
10716
+ byte_size: number;
10717
+ /**
10718
+ * A URL to download the file.
10719
+ */
10720
+ url: string;
10721
+ } | null;
10722
+ /**
10723
+ * Evidence that no qualifying program existed, or null when none is attached.
10724
+ */
10725
+ no_availability_proof: {
10726
+ /**
10727
+ * ID of the evidence document; unchanged when the slot's file is replaced.
10728
+ */
10729
+ id: string;
10730
+ /**
10731
+ * Stored name of the uploaded file.
10732
+ */
10733
+ filename: string;
10734
+ /**
10735
+ * MIME type of the file; null when not recorded.
10736
+ */
10737
+ content_type: string | null;
10738
+ /**
10739
+ * Size of the file in bytes.
10740
+ */
10741
+ byte_size: number;
10742
+ /**
10743
+ * A URL to download the file.
10744
+ */
10745
+ url: string;
10746
+ } | null;
10140
10747
  /**
10141
10748
  * When the exception was created.
10142
10749
  */
@@ -10146,6 +10753,136 @@ export type JobGoodFaithEffortExceptionResponseObject = {
10146
10753
  */
10147
10754
  updated_at: string;
10148
10755
  };
10756
+ /**
10757
+ * Request body for creating a good-faith-effort exception on the job in the path. `job_id` is not part of the body. Every field is optional at the transport layer; model validations answer 422 when the two tracks, presence rules, one-year window, or `response=partial` constraint fail. Proof files attach through `request_letter_signed_id`, `submission_proof_signed_id`, `response_letter_signed_id`, and `no_availability_proof_signed_id` minted by `POST /api/v1/direct_uploads` naming `jobs.pwa.apprenticeship.good_faith_effort_exceptions`; when any of those keys is present, `performed_by_user_id` is required. Undeclared body keys, including the web form's `hours_per_apprentice`, return 400.
10758
+ */
10759
+ export type JobGoodFaithEffortExceptionParameters = {
10760
+ /**
10761
+ * True when no qualifying apprenticeship program existed; false when a program was asked. Omission stores false. Null or a non-boolean answers 422.
10762
+ */
10763
+ program_unavailable?: boolean;
10764
+ /**
10765
+ * Number of apprentices requested. Null or omission is absent; a non-integer answers 422. Presence and comparison rules are model validations.
10766
+ */
10767
+ num_apprentices_requested?: number | null;
10768
+ /**
10769
+ * Number of apprentices the program provided. Null or omission is absent; a non-integer answers 422.
10770
+ */
10771
+ num_apprentices_provided?: number | null;
10772
+ /**
10773
+ * Requested apprentice labor per apprentice, in minutes — not hours. Null or omission is absent; a non-integer answers 422.
10774
+ */
10775
+ minutes_per_apprentice?: number | null;
10776
+ /**
10777
+ * Calendar date the request was made as YYYY-MM-DD, or null. Any other string, a timestamp included, answers 422.
10778
+ */
10779
+ requested_on_date?: string | null;
10780
+ /**
10781
+ * First calendar day of the requested coverage window as YYYY-MM-DD, or null. Any other string, a timestamp included, answers 422.
10782
+ */
10783
+ request_start_date?: string | null;
10784
+ /**
10785
+ * Last calendar day of the requested coverage window as YYYY-MM-DD, or null. Must be on or after request_start_date and at most one year later.
10786
+ */
10787
+ request_end_date?: string | null;
10788
+ /**
10789
+ * Occupation named in the request, or null. Must be absent when `program_unavailable` is true.
10790
+ */
10791
+ occupation?: string | null;
10792
+ /**
10793
+ * Name of the apprenticeship program that was asked, or null. Must be absent when `program_unavailable` is true.
10794
+ */
10795
+ program_name?: string | null;
10796
+ /**
10797
+ * The program's reply — `no_response`, `denied`, or `partial`. Null when `program_unavailable` is true. Any other value answers 422. Must be `partial` when `num_apprentices_provided` is greater than 0.
10798
+ */
10799
+ response?: 'no_response' | 'denied' | 'partial' | null;
10800
+ /**
10801
+ * A signed_id from POST /api/v1/direct_uploads registered for `jobs.pwa.apprenticeship.good_faith_effort_exceptions`. Omit the key to keep the stored file; a signed id creates or replaces the named-slot document. Null or a blank string answers 422 — there is no clear. When any proof signed id is present, `performed_by_user_id` is required.
10802
+ */
10803
+ request_letter_signed_id?: string;
10804
+ /**
10805
+ * A signed_id from POST /api/v1/direct_uploads registered for `jobs.pwa.apprenticeship.good_faith_effort_exceptions`. Omit the key to keep the stored file; a signed id creates or replaces the named-slot document. Null or a blank string answers 422 — there is no clear. When any proof signed id is present, `performed_by_user_id` is required.
10806
+ */
10807
+ submission_proof_signed_id?: string;
10808
+ /**
10809
+ * A signed_id from POST /api/v1/direct_uploads registered for `jobs.pwa.apprenticeship.good_faith_effort_exceptions`. Omit the key to keep the stored file; a signed id creates or replaces the named-slot document. Null or a blank string answers 422 — there is no clear. When any proof signed id is present, `performed_by_user_id` is required.
10810
+ */
10811
+ response_letter_signed_id?: string;
10812
+ /**
10813
+ * A signed_id from POST /api/v1/direct_uploads registered for `jobs.pwa.apprenticeship.good_faith_effort_exceptions`. Omit the key to keep the stored file; a signed id creates or replaces the named-slot document. Null or a blank string answers 422 — there is no clear. When any proof signed id is present, `performed_by_user_id` is required.
10814
+ */
10815
+ no_availability_proof_signed_id?: string;
10816
+ /**
10817
+ * ID of the user recorded as creator of a newly attached proof document. Required when any proof signed id is present (omission then answers 400); ignored when every proof signed id is omitted. Supplied null, a blank ID, or a wrong type answers 422. A user the API key cannot see answers 404 `reference_not_found`. Replacing a populated slot keeps the original creator.
10818
+ */
10819
+ performed_by_user_id?: string;
10820
+ };
10821
+ /**
10822
+ * Request body for updating a good-faith-effort exception. Every field is optional; omit a field to preserve its current value. The resulting record must still satisfy the two-track, presence, one-year-window, and `response=partial` validations. Proof files attach through the same `*_signed_id` keys as create; omit a key to keep the stored file, and send `performed_by_user_id` when any signed id is present. `job_id` comes from the path and cannot be sent. Undeclared body keys, including `hours_per_apprentice`, return 400.
10823
+ */
10824
+ export type JobGoodFaithEffortExceptionUpdateParameters = {
10825
+ /**
10826
+ * True when no qualifying apprenticeship program existed; false when a program was asked. Omission stores false. Null or a non-boolean answers 422.
10827
+ */
10828
+ program_unavailable?: boolean;
10829
+ /**
10830
+ * Number of apprentices requested. Null or omission is absent; a non-integer answers 422. Presence and comparison rules are model validations.
10831
+ */
10832
+ num_apprentices_requested?: number | null;
10833
+ /**
10834
+ * Number of apprentices the program provided. Null or omission is absent; a non-integer answers 422.
10835
+ */
10836
+ num_apprentices_provided?: number | null;
10837
+ /**
10838
+ * Requested apprentice labor per apprentice, in minutes — not hours. Null or omission is absent; a non-integer answers 422.
10839
+ */
10840
+ minutes_per_apprentice?: number | null;
10841
+ /**
10842
+ * Calendar date the request was made as YYYY-MM-DD, or null. Any other string, a timestamp included, answers 422.
10843
+ */
10844
+ requested_on_date?: string | null;
10845
+ /**
10846
+ * First calendar day of the requested coverage window as YYYY-MM-DD, or null. Any other string, a timestamp included, answers 422.
10847
+ */
10848
+ request_start_date?: string | null;
10849
+ /**
10850
+ * Last calendar day of the requested coverage window as YYYY-MM-DD, or null. Must be on or after request_start_date and at most one year later.
10851
+ */
10852
+ request_end_date?: string | null;
10853
+ /**
10854
+ * Occupation named in the request, or null. Must be absent when `program_unavailable` is true.
10855
+ */
10856
+ occupation?: string | null;
10857
+ /**
10858
+ * Name of the apprenticeship program that was asked, or null. Must be absent when `program_unavailable` is true.
10859
+ */
10860
+ program_name?: string | null;
10861
+ /**
10862
+ * The program's reply — `no_response`, `denied`, or `partial`. Null when `program_unavailable` is true. Any other value answers 422. Must be `partial` when `num_apprentices_provided` is greater than 0.
10863
+ */
10864
+ response?: 'no_response' | 'denied' | 'partial' | null;
10865
+ /**
10866
+ * A signed_id from POST /api/v1/direct_uploads registered for `jobs.pwa.apprenticeship.good_faith_effort_exceptions`. Omit the key to keep the stored file; a signed id creates or replaces the named-slot document. Null or a blank string answers 422 — there is no clear. When any proof signed id is present, `performed_by_user_id` is required.
10867
+ */
10868
+ request_letter_signed_id?: string;
10869
+ /**
10870
+ * A signed_id from POST /api/v1/direct_uploads registered for `jobs.pwa.apprenticeship.good_faith_effort_exceptions`. Omit the key to keep the stored file; a signed id creates or replaces the named-slot document. Null or a blank string answers 422 — there is no clear. When any proof signed id is present, `performed_by_user_id` is required.
10871
+ */
10872
+ submission_proof_signed_id?: string;
10873
+ /**
10874
+ * A signed_id from POST /api/v1/direct_uploads registered for `jobs.pwa.apprenticeship.good_faith_effort_exceptions`. Omit the key to keep the stored file; a signed id creates or replaces the named-slot document. Null or a blank string answers 422 — there is no clear. When any proof signed id is present, `performed_by_user_id` is required.
10875
+ */
10876
+ response_letter_signed_id?: string;
10877
+ /**
10878
+ * A signed_id from POST /api/v1/direct_uploads registered for `jobs.pwa.apprenticeship.good_faith_effort_exceptions`. Omit the key to keep the stored file; a signed id creates or replaces the named-slot document. Null or a blank string answers 422 — there is no clear. When any proof signed id is present, `performed_by_user_id` is required.
10879
+ */
10880
+ no_availability_proof_signed_id?: string;
10881
+ /**
10882
+ * ID of the user recorded as creator of a newly attached proof document. Required when any proof signed id is present (omission then answers 400); ignored when every proof signed id is omitted. Supplied null, a blank ID, or a wrong type answers 422. A user the API key cannot see answers 404 `reference_not_found`. Replacing a populated slot keeps the original creator.
10883
+ */
10884
+ performed_by_user_id?: string;
10885
+ };
10149
10886
  /**
10150
10887
  * A page of a job's good-faith-effort exceptions, with pagination metadata and navigation links.
10151
10888
  */
@@ -10216,7 +10953,7 @@ export type JobFormAssignmentResponseObject = {
10216
10953
  }>;
10217
10954
  };
10218
10955
  /**
10219
- * A corrective payment recorded against a job's PWA obligations. Read-only. Does not include attestation files, pretty type, currency, or a Money amount.
10956
+ * A corrective payment recorded against a job's PWA obligations. Does not include pretty type, currency, or a Money amount.
10220
10957
  */
10221
10958
  export type JobCurePaymentResponseObject = {
10222
10959
  /**
@@ -10255,6 +10992,31 @@ export type JobCurePaymentResponseObject = {
10255
10992
  * Id of the user who recorded the payment.
10256
10993
  */
10257
10994
  created_by_user_id: string;
10995
+ /**
10996
+ * Attestation file for this payment, or null when none is attached.
10997
+ */
10998
+ attestation: {
10999
+ /**
11000
+ * ID of the attestation document; unchanged when the file is replaced.
11001
+ */
11002
+ id: string;
11003
+ /**
11004
+ * Stored name of the uploaded file.
11005
+ */
11006
+ filename: string;
11007
+ /**
11008
+ * MIME type of the file; null when not recorded.
11009
+ */
11010
+ content_type: string | null;
11011
+ /**
11012
+ * Size of the file in bytes.
11013
+ */
11014
+ byte_size: number;
11015
+ /**
11016
+ * A URL to download the file.
11017
+ */
11018
+ url: string;
11019
+ } | null;
10258
11020
  /**
10259
11021
  * When the payment was created.
10260
11022
  */
@@ -10264,6 +11026,76 @@ export type JobCurePaymentResponseObject = {
10264
11026
  */
10265
11027
  updated_at: string;
10266
11028
  };
11029
+ /**
11030
+ * Request body for creating a job PWA cure payment. `job_id` comes from the path and is not part of the body. `type`, `amount_cents`, the three dates, and `performed_by_user_id` are required; omitting any of those returns 400. The attestation file attaches through `attestation_signed_id` (a purpose-bound `jobs.pwa.cure_payments` signed id). Undeclared body keys return 400, and a null for a field that is not nullable or a wrongly typed value returns 422 at its pointer, before any payment is saved.
11031
+ */
11032
+ export type JobCurePaymentParameters = {
11033
+ /**
11034
+ * Payment amount in whole cents as a digit string, for example `"150000"`. A JSON integer, a fractional string, or a non-digit value answers 422.
11035
+ */
11036
+ amount_cents: string;
11037
+ /**
11038
+ * Calendar date the payment was made, as `YYYY-MM-DD`. Any other string, a timestamp included, answers 422. Must not be in the future.
11039
+ */
11040
+ paid_on_date: string;
11041
+ /**
11042
+ * First calendar day of the window this payment cures, as `YYYY-MM-DD`. Must be on or before `cures_to_date` and not in the future.
11043
+ */
11044
+ cures_from_date: string;
11045
+ /**
11046
+ * Last calendar day of the window this payment cures, as `YYYY-MM-DD`. Must be on or after `cures_from_date` and not in the future.
11047
+ */
11048
+ cures_to_date: string;
11049
+ /**
11050
+ * Optional notes; null stores absence.
11051
+ */
11052
+ notes?: string | null;
11053
+ /**
11054
+ * A signed_id from POST /api/v1/direct_uploads registered for `jobs.pwa.cure_payments`. Omit the key to keep the stored file; a signed id creates or replaces the attestation document. Null or a blank string answers 422 — there is no clear.
11055
+ */
11056
+ attestation_signed_id?: string;
11057
+ /**
11058
+ * ID of the user recorded as creator of the payment (and of a newly attached attestation). Required on create (omission answers 400). On update it is required when `attestation_signed_id` is present and ignored when that key is omitted. Supplied null, a blank ID, or a wrong type answers 422. A user the API key cannot see answers 404 `reference_not_found`. Replacing a populated attestation keeps the original document creator.
11059
+ */
11060
+ performed_by_user_id: string;
11061
+ /**
11062
+ * Stored STI class name — `Pwa::CurePayments::Federal` or `Pwa::CurePayments::Regional`. Create-only; every update that includes it returns 400, even when unchanged.
11063
+ */
11064
+ type: 'Pwa::CurePayments::Federal' | 'Pwa::CurePayments::Regional';
11065
+ };
11066
+ /**
11067
+ * Request body for updating a job PWA cure payment. Every field is optional; omit a field to preserve its current value. `type` is create-only; omit it on PATCH. Every update that includes it returns 400, even when unchanged. The attestation file attaches through the same `attestation_signed_id` key as create; omit the key to keep the stored file, and send `performed_by_user_id` when a signed id is present. Undeclared body keys return 400, and a null for a field that is not nullable or a wrongly typed value returns 422 at its pointer, before any payment changes.
11068
+ */
11069
+ export type JobCurePaymentUpdateParameters = {
11070
+ /**
11071
+ * Replacement payment amount in whole cents as a digit string. A JSON integer, a fractional string, or a non-digit value answers 422. Omit to preserve the current amount.
11072
+ */
11073
+ amount_cents?: string;
11074
+ /**
11075
+ * Replacement calendar date the payment was made, as `YYYY-MM-DD`. Must not be in the future.
11076
+ */
11077
+ paid_on_date?: string;
11078
+ /**
11079
+ * Replacement first calendar day of the cured window, as `YYYY-MM-DD`.
11080
+ */
11081
+ cures_from_date?: string;
11082
+ /**
11083
+ * Replacement last calendar day of the cured window, as `YYYY-MM-DD`.
11084
+ */
11085
+ cures_to_date?: string;
11086
+ /**
11087
+ * Replacement notes; null stores absence. Omit to preserve the current value.
11088
+ */
11089
+ notes?: string | null;
11090
+ /**
11091
+ * A signed_id from POST /api/v1/direct_uploads registered for `jobs.pwa.cure_payments`. Omit the key to keep the stored file; a signed id creates or replaces the attestation document. Null or a blank string answers 422 — there is no clear. When this key is present, `performed_by_user_id` is required.
11092
+ */
11093
+ attestation_signed_id?: string;
11094
+ /**
11095
+ * ID of the user recorded as creator of a newly attached attestation. Required when `attestation_signed_id` is present (omission then answers 400); ignored when that key is omitted. A user the API key cannot see answers 404 `reference_not_found`. Replacing a populated slot keeps the original creator.
11096
+ */
11097
+ performed_by_user_id?: string;
11098
+ };
10267
11099
  /**
10268
11100
  * A page of a job's PWA cure payments, with pagination metadata and navigation links.
10269
11101
  */
@@ -12349,7 +13181,7 @@ export type RegionalJobWageDeterminationHistoryCorrectionObject = {
12349
13181
  /**
12350
13182
  * State-specific rate fields recorded on a Regional determination, as decimal-string money in
12351
13183
  * cents (e.g. "538.0"). Which keys appear is set by the job's region, so this object is always
12352
- * a region-determined subset of the nine keys the write side accepts — never a fixed shape:
13184
+ * a region-determined subset of these keys — never a fixed shape:
12353
13185
  *
12354
13186
  * - Categorized-fringe regions (currently IL) carry `combined_health_fringe_rate_cents`,
12355
13187
  * `combined_savings_fringe_rate_cents`, `combined_holiday_pto_fringe_rate_cents`,
@@ -12359,7 +13191,9 @@ export type RegionalJobWageDeterminationHistoryCorrectionObject = {
12359
13191
  * `two_x_fringe_adder_rate_cents`.
12360
13192
  * - A region with neither returns an empty object.
12361
13193
  *
12362
- * Categorized-fringe values are non-null when present; overtime-adder values may be null.
13194
+ * Categorized-fringe values are non-null when present; legacy overtime-adder values may be null.
13195
+ * The overtime-adder fields are read-only. Configure new overtime premiums through the
13196
+ * determination's rate rules.
12363
13197
  *
12364
13198
  */
12365
13199
  export type RegionalWageDeterminationFieldsResponse = {
@@ -12451,7 +13285,7 @@ export type RegionalJobWageDeterminationParameters = {
12451
13285
  */
12452
13286
  general_wage_determination?: string | null;
12453
13287
  /**
12454
- * State-specific rates, as decimal-string money in cents (e.g. "538.0"). The determination's region decides which rates it holds: categorized-fringe regions (currently IL) require the five fringe rates, and overtime-adder regions (currently IL and NY) accept the four adder rates. A value for a rate the region does not hold returns a 422.
13288
+ * State-specific categorized fringe rates, as decimal-string money in cents (e.g. "538.0"). The determination's region decides which rates it holds: categorized-fringe regions (currently IL) require the five fringe rates. A value for a rate the region does not hold returns a 422. Configure overtime wage and fringe premiums through the determination's rate rules.
12455
13289
  */
12456
13290
  regional_fields?: {
12457
13291
  /**
@@ -12474,22 +13308,6 @@ export type RegionalJobWageDeterminationParameters = {
12474
13308
  * Other (uncategorized) fringe rate, in cents as a decimal string. Required in categorized-fringe regions, which refuse null; null elsewhere.
12475
13309
  */
12476
13310
  other_fringe_rate_cents?: string | null;
12477
- /**
12478
- * Hourly wage adder added to 1.5x overtime, in cents as a decimal string. Overtime-adder regions only; may be null.
12479
- */
12480
- one_five_x_adder_rate_cents?: string | null;
12481
- /**
12482
- * Hourly wage adder added to 2x overtime, in cents as a decimal string. Overtime-adder regions only; may be null.
12483
- */
12484
- two_x_adder_rate_cents?: string | null;
12485
- /**
12486
- * Hourly fringe adder added to 1.5x overtime, in cents as a decimal string. Overtime-adder regions only; may be null.
12487
- */
12488
- one_five_x_fringe_adder_rate_cents?: string | null;
12489
- /**
12490
- * Hourly fringe adder added to 2x overtime, in cents as a decimal string. Overtime-adder regions only; may be null.
12491
- */
12492
- two_x_fringe_adder_rate_cents?: string | null;
12493
13311
  };
12494
13312
  /**
12495
13313
  * Overtime package whose rules govern overtime on work under this determination. It attaches to every version of the new determination. Null, or an omitted key, attaches none. A package belonging to another company is refused, and a Federal determination refuses one outright — only a Regional determination carries overtime rules.
@@ -12537,7 +13355,7 @@ export type JobWageDeterminationUpdateParameters = {
12537
13355
  */
12538
13356
  general_wage_determination?: string | null;
12539
13357
  /**
12540
- * State-specific rates for a Regional determination, as decimal-string money in cents (e.g. "538.0"). The determination's region decides which rates it holds: categorized-fringe regions (currently IL) require the five fringe rates, and overtime-adder regions (currently IL and NY) accept the four adder rates. A value for a rate the region does not hold returns a 422; send null to clear one. An omitted rate keeps its current value.
13358
+ * State-specific categorized fringe rates for a Regional determination, as decimal-string money in cents (e.g. "538.0"). The determination's region decides which rates it holds: categorized-fringe regions (currently IL) require the five fringe rates. A value for a rate the region does not hold returns a 422; send null to clear a rate where allowed. An omitted rate keeps its current value. Configure overtime wage and fringe premiums through the determination's rate rules.
12541
13359
  */
12542
13360
  regional_fields?: {
12543
13361
  /**
@@ -12560,22 +13378,6 @@ export type JobWageDeterminationUpdateParameters = {
12560
13378
  * Other (uncategorized) fringe rate, in cents as a decimal string. Required in categorized-fringe regions, which refuse null; null elsewhere.
12561
13379
  */
12562
13380
  other_fringe_rate_cents?: string | null;
12563
- /**
12564
- * Hourly wage adder added to 1.5x overtime, in cents as a decimal string. Overtime-adder regions only; may be null.
12565
- */
12566
- one_five_x_adder_rate_cents?: string | null;
12567
- /**
12568
- * Hourly wage adder added to 2x overtime, in cents as a decimal string. Overtime-adder regions only; may be null.
12569
- */
12570
- two_x_adder_rate_cents?: string | null;
12571
- /**
12572
- * Hourly fringe adder added to 1.5x overtime, in cents as a decimal string. Overtime-adder regions only; may be null.
12573
- */
12574
- one_five_x_fringe_adder_rate_cents?: string | null;
12575
- /**
12576
- * Hourly fringe adder added to 2x overtime, in cents as a decimal string. Overtime-adder regions only; may be null.
12577
- */
12578
- two_x_fringe_adder_rate_cents?: string | null;
12579
13381
  };
12580
13382
  };
12581
13383
  /**
@@ -12611,7 +13413,7 @@ export type JobWageDeterminationScheduledChangeParameters = {
12611
13413
  */
12612
13414
  general_wage_determination?: string | null;
12613
13415
  /**
12614
- * State-specific rates for a Regional determination, as decimal-string money in cents (e.g. "538.0"). The determination's region decides which rates it holds: categorized-fringe regions (currently IL) require the five fringe rates, and overtime-adder regions (currently IL and NY) accept the four adder rates. A value for a rate the region does not hold returns a 422; send null to clear one. An omitted rate keeps its current value.
13416
+ * State-specific categorized fringe rates for a Regional determination, as decimal-string money in cents (e.g. "538.0"). The determination's region decides which rates it holds: categorized-fringe regions (currently IL) require the five fringe rates. A value for a rate the region does not hold returns a 422; send null to clear a rate where allowed. An omitted rate keeps its current value. Configure overtime wage and fringe premiums through the determination's rate rules.
12615
13417
  */
12616
13418
  regional_fields?: {
12617
13419
  /**
@@ -12634,22 +13436,6 @@ export type JobWageDeterminationScheduledChangeParameters = {
12634
13436
  * Other (uncategorized) fringe rate, in cents as a decimal string. Required in categorized-fringe regions, which refuse null; null elsewhere.
12635
13437
  */
12636
13438
  other_fringe_rate_cents?: string | null;
12637
- /**
12638
- * Hourly wage adder added to 1.5x overtime, in cents as a decimal string. Overtime-adder regions only; may be null.
12639
- */
12640
- one_five_x_adder_rate_cents?: string | null;
12641
- /**
12642
- * Hourly wage adder added to 2x overtime, in cents as a decimal string. Overtime-adder regions only; may be null.
12643
- */
12644
- two_x_adder_rate_cents?: string | null;
12645
- /**
12646
- * Hourly fringe adder added to 1.5x overtime, in cents as a decimal string. Overtime-adder regions only; may be null.
12647
- */
12648
- one_five_x_fringe_adder_rate_cents?: string | null;
12649
- /**
12650
- * Hourly fringe adder added to 2x overtime, in cents as a decimal string. Overtime-adder regions only; may be null.
12651
- */
12652
- two_x_fringe_adder_rate_cents?: string | null;
12653
13439
  };
12654
13440
  };
12655
13441
  /**
@@ -12991,7 +13777,7 @@ export type RegionalProjectWageDeterminationParameters = {
12991
13777
  */
12992
13778
  general_wage_determination?: string | null;
12993
13779
  /**
12994
- * State-specific rates, as decimal-string money in cents (e.g. "538.0"). The determination's region decides which rates it holds: categorized-fringe regions (currently IL) require the five fringe rates, and overtime-adder regions (currently IL and NY) accept the four adder rates. A value for a rate the region does not hold returns a 422.
13780
+ * State-specific categorized fringe rates, as decimal-string money in cents (e.g. "538.0"). The determination's region decides which rates it holds: categorized-fringe regions (currently IL) require the five fringe rates. A value for a rate the region does not hold returns a 422. Configure overtime wage and fringe premiums through the determination's rate rules.
12995
13781
  */
12996
13782
  regional_fields?: {
12997
13783
  /**
@@ -13014,22 +13800,6 @@ export type RegionalProjectWageDeterminationParameters = {
13014
13800
  * Other (uncategorized) fringe rate, in cents as a decimal string. Required in categorized-fringe regions, which refuse null; null elsewhere.
13015
13801
  */
13016
13802
  other_fringe_rate_cents?: string | null;
13017
- /**
13018
- * Hourly wage adder added to 1.5x overtime, in cents as a decimal string. Overtime-adder regions only; may be null.
13019
- */
13020
- one_five_x_adder_rate_cents?: string | null;
13021
- /**
13022
- * Hourly wage adder added to 2x overtime, in cents as a decimal string. Overtime-adder regions only; may be null.
13023
- */
13024
- two_x_adder_rate_cents?: string | null;
13025
- /**
13026
- * Hourly fringe adder added to 1.5x overtime, in cents as a decimal string. Overtime-adder regions only; may be null.
13027
- */
13028
- one_five_x_fringe_adder_rate_cents?: string | null;
13029
- /**
13030
- * Hourly fringe adder added to 2x overtime, in cents as a decimal string. Overtime-adder regions only; may be null.
13031
- */
13032
- two_x_fringe_adder_rate_cents?: string | null;
13033
13803
  };
13034
13804
  /**
13035
13805
  * Overtime package whose rules govern overtime on work under this determination. It attaches to every version of the new determination. Null, or an omitted key, attaches none. A package belonging to another company is refused, and a Federal determination refuses one outright — only a Regional determination carries overtime rules.
@@ -13077,7 +13847,7 @@ export type ProjectWageDeterminationUpdateParameters = {
13077
13847
  */
13078
13848
  general_wage_determination?: string | null;
13079
13849
  /**
13080
- * State-specific rates for a Regional determination, as decimal-string money in cents (e.g. "538.0"). The determination's region decides which rates it holds: categorized-fringe regions (currently IL) require the five fringe rates, and overtime-adder regions (currently IL and NY) accept the four adder rates. A value for a rate the region does not hold returns a 422; send null to clear one. An omitted rate keeps its current value.
13850
+ * State-specific categorized fringe rates for a Regional determination, as decimal-string money in cents (e.g. "538.0"). The determination's region decides which rates it holds: categorized-fringe regions (currently IL) require the five fringe rates. A value for a rate the region does not hold returns a 422; send null to clear a rate where allowed. An omitted rate keeps its current value. Configure overtime wage and fringe premiums through the determination's rate rules.
13081
13851
  */
13082
13852
  regional_fields?: {
13083
13853
  /**
@@ -13100,22 +13870,6 @@ export type ProjectWageDeterminationUpdateParameters = {
13100
13870
  * Other (uncategorized) fringe rate, in cents as a decimal string. Required in categorized-fringe regions, which refuse null; null elsewhere.
13101
13871
  */
13102
13872
  other_fringe_rate_cents?: string | null;
13103
- /**
13104
- * Hourly wage adder added to 1.5x overtime, in cents as a decimal string. Overtime-adder regions only; may be null.
13105
- */
13106
- one_five_x_adder_rate_cents?: string | null;
13107
- /**
13108
- * Hourly wage adder added to 2x overtime, in cents as a decimal string. Overtime-adder regions only; may be null.
13109
- */
13110
- two_x_adder_rate_cents?: string | null;
13111
- /**
13112
- * Hourly fringe adder added to 1.5x overtime, in cents as a decimal string. Overtime-adder regions only; may be null.
13113
- */
13114
- one_five_x_fringe_adder_rate_cents?: string | null;
13115
- /**
13116
- * Hourly fringe adder added to 2x overtime, in cents as a decimal string. Overtime-adder regions only; may be null.
13117
- */
13118
- two_x_fringe_adder_rate_cents?: string | null;
13119
13873
  };
13120
13874
  };
13121
13875
  /**
@@ -13151,7 +13905,7 @@ export type ProjectWageDeterminationScheduledChangeParameters = {
13151
13905
  */
13152
13906
  general_wage_determination?: string | null;
13153
13907
  /**
13154
- * State-specific rates for a Regional determination, as decimal-string money in cents (e.g. "538.0"). The determination's region decides which rates it holds: categorized-fringe regions (currently IL) require the five fringe rates, and overtime-adder regions (currently IL and NY) accept the four adder rates. A value for a rate the region does not hold returns a 422; send null to clear one. An omitted rate keeps its current value.
13908
+ * State-specific categorized fringe rates for a Regional determination, as decimal-string money in cents (e.g. "538.0"). The determination's region decides which rates it holds: categorized-fringe regions (currently IL) require the five fringe rates. A value for a rate the region does not hold returns a 422; send null to clear a rate where allowed. An omitted rate keeps its current value. Configure overtime wage and fringe premiums through the determination's rate rules.
13155
13909
  */
13156
13910
  regional_fields?: {
13157
13911
  /**
@@ -13174,22 +13928,6 @@ export type ProjectWageDeterminationScheduledChangeParameters = {
13174
13928
  * Other (uncategorized) fringe rate, in cents as a decimal string. Required in categorized-fringe regions, which refuse null; null elsewhere.
13175
13929
  */
13176
13930
  other_fringe_rate_cents?: string | null;
13177
- /**
13178
- * Hourly wage adder added to 1.5x overtime, in cents as a decimal string. Overtime-adder regions only; may be null.
13179
- */
13180
- one_five_x_adder_rate_cents?: string | null;
13181
- /**
13182
- * Hourly wage adder added to 2x overtime, in cents as a decimal string. Overtime-adder regions only; may be null.
13183
- */
13184
- two_x_adder_rate_cents?: string | null;
13185
- /**
13186
- * Hourly fringe adder added to 1.5x overtime, in cents as a decimal string. Overtime-adder regions only; may be null.
13187
- */
13188
- one_five_x_fringe_adder_rate_cents?: string | null;
13189
- /**
13190
- * Hourly fringe adder added to 2x overtime, in cents as a decimal string. Overtime-adder regions only; may be null.
13191
- */
13192
- two_x_fringe_adder_rate_cents?: string | null;
13193
13931
  };
13194
13932
  };
13195
13933
  /**
@@ -13894,7 +14632,7 @@ export type AssetsItemResponseObject = {
13894
14632
  */
13895
14633
  status: 'available' | 'assigned' | null;
13896
14634
  /**
13897
- * The day the item was purchased, as a calendar date (`YYYY-MM-DD`), the UTC day it is stored on, the same day the web shows. Null when not recorded.
14635
+ * The day the item was purchased, as a calendar date (`YYYY-MM-DD`), the same day the web shows. Null when not recorded.
13898
14636
  */
13899
14637
  purchase_date: string | null;
13900
14638
  /**
@@ -13986,7 +14724,7 @@ export type AssetsItemParameters = {
13986
14724
  */
13987
14725
  status?: 'available' | 'assigned';
13988
14726
  /**
13989
- * The day the item was purchased, as a calendar date (`YYYY-MM-DD`). It is stored as 00:00 UTC on that day, the same as the web. A value with a time of day is refused with `422`. Send null to clear it.
14727
+ * The day the item was purchased, as a calendar date (`YYYY-MM-DD`), the same day the web shows. A value with a time of day is refused with `422`. Send null to clear it.
13990
14728
  */
13991
14729
  purchase_date?: string | null;
13992
14730
  /**
@@ -14081,7 +14819,7 @@ export type AssetsItemUpdateParameters = {
14081
14819
  */
14082
14820
  status?: 'available' | 'assigned';
14083
14821
  /**
14084
- * The day the item was purchased, as a calendar date (`YYYY-MM-DD`). It is stored as 00:00 UTC on that day, the same as the web. A value with a time of day is refused with `422`. Send null to clear it.
14822
+ * The day the item was purchased, as a calendar date (`YYYY-MM-DD`), the same day the web shows. A value with a time of day is refused with `422`. Send null to clear it.
14085
14823
  */
14086
14824
  purchase_date?: string | null;
14087
14825
  /**
@@ -17129,6 +17867,10 @@ export type CreateCategoryErrors = {
17129
17867
  * Forbidden
17130
17868
  */
17131
17869
  403: Problem;
17870
+ /**
17871
+ * Not Found
17872
+ */
17873
+ 404: Problem;
17132
17874
  /**
17133
17875
  * Unprocessable Content
17134
17876
  */
@@ -17238,8 +17980,22 @@ export type ListCustodiesData = {
17238
17980
  query?: {
17239
17981
  'filter[assets_item_id]'?: string;
17240
17982
  'filter[user_id]'?: string;
17983
+ 'filter[created_at][gte]'?: string;
17984
+ 'filter[created_at][lte]'?: string;
17985
+ 'filter[updated_at][gte]'?: string;
17986
+ 'filter[updated_at][lte]'?: string;
17241
17987
  filter?: string;
17242
17988
  'filter[unexpected]'?: string;
17989
+ /**
17990
+ * This pagination cursor corresponds to the cursor value found in the response in
17991
+ * `meta.page.next_cursor`.
17992
+ */
17993
+ 'page[cursor]'?: string;
17994
+ /**
17995
+ * Maximum number of records to return per page. Defaults to 20. A value above 100 is capped to 100 rather than rejected; a value that is zero, negative, or not an integer is rejected with a `400`.
17996
+ */
17997
+ 'page[limit]'?: number;
17998
+ page?: string;
17243
17999
  };
17244
18000
  url: '/api/v1/assets/custodies';
17245
18001
  };
@@ -17252,6 +18008,10 @@ export type ListCustodiesErrors = {
17252
18008
  * Forbidden
17253
18009
  */
17254
18010
  403: Problem;
18011
+ /**
18012
+ * Unprocessable Content
18013
+ */
18014
+ 422: Problem;
17255
18015
  };
17256
18016
  export type ListCustodiesError = ListCustodiesErrors[keyof ListCustodiesErrors];
17257
18017
  export type ListCustodiesResponses = {
@@ -17526,8 +18286,22 @@ export type ListInventoriesData = {
17526
18286
  query?: {
17527
18287
  'filter[assets_item_id]'?: string;
17528
18288
  'filter[assets_site_id]'?: string;
18289
+ 'filter[created_at][gte]'?: string;
18290
+ 'filter[created_at][lte]'?: string;
18291
+ 'filter[updated_at][gte]'?: string;
18292
+ 'filter[updated_at][lte]'?: string;
17529
18293
  filter?: string;
17530
18294
  'filter[unexpected]'?: string;
18295
+ /**
18296
+ * This pagination cursor corresponds to the cursor value found in the response in
18297
+ * `meta.page.next_cursor`.
18298
+ */
18299
+ 'page[cursor]'?: string;
18300
+ /**
18301
+ * Maximum number of records to return per page. Defaults to 20. A value above 100 is capped to 100 rather than rejected; a value that is zero, negative, or not an integer is rejected with a `400`.
18302
+ */
18303
+ 'page[limit]'?: number;
18304
+ page?: string;
17531
18305
  };
17532
18306
  url: '/api/v1/assets/inventories';
17533
18307
  };
@@ -17540,6 +18314,10 @@ export type ListInventoriesErrors = {
17540
18314
  * Forbidden
17541
18315
  */
17542
18316
  403: Problem;
18317
+ /**
18318
+ * Unprocessable Content
18319
+ */
18320
+ 422: Problem;
17543
18321
  };
17544
18322
  export type ListInventoriesError = ListInventoriesErrors[keyof ListInventoriesErrors];
17545
18323
  export type ListInventoriesResponses = {
@@ -19473,8 +20251,22 @@ export type ListTransfersData = {
19473
20251
  *
19474
20252
  */
19475
20253
  'filter[status]'?: string;
20254
+ 'filter[created_at][gte]'?: string;
20255
+ 'filter[created_at][lte]'?: string;
20256
+ 'filter[updated_at][gte]'?: string;
20257
+ 'filter[updated_at][lte]'?: string;
19476
20258
  filter?: string;
19477
20259
  'filter[unexpected]'?: string;
20260
+ /**
20261
+ * This pagination cursor corresponds to the cursor value found in the response in
20262
+ * `meta.page.next_cursor`.
20263
+ */
20264
+ 'page[cursor]'?: string;
20265
+ /**
20266
+ * Maximum number of records to return per page. Defaults to 20. A value above 100 is capped to 100 rather than rejected; a value that is zero, negative, or not an integer is rejected with a `400`.
20267
+ */
20268
+ 'page[limit]'?: number;
20269
+ page?: string;
19478
20270
  };
19479
20271
  url: '/api/v1/assets/transfers';
19480
20272
  };
@@ -20399,6 +21191,10 @@ export type DeleteCertificationErrors = {
20399
21191
  * Not Found
20400
21192
  */
20401
21193
  404: Problem;
21194
+ /**
21195
+ * Unprocessable Content
21196
+ */
21197
+ 422: Problem;
20402
21198
  };
20403
21199
  export type DeleteCertificationError = DeleteCertificationErrors[keyof DeleteCertificationErrors];
20404
21200
  export type DeleteCertificationResponses = {
@@ -20455,6 +21251,10 @@ export type UpdateCertificationErrors = {
20455
21251
  * Not Found
20456
21252
  */
20457
21253
  404: Problem;
21254
+ /**
21255
+ * Unprocessable Content
21256
+ */
21257
+ 422: Problem;
20458
21258
  };
20459
21259
  export type UpdateCertificationError = UpdateCertificationErrors[keyof UpdateCertificationErrors];
20460
21260
  export type UpdateCertificationResponses = {
@@ -20764,6 +21564,10 @@ export type ListAssessmentsData = {
20764
21564
  * competent or not_yet_competent. Null until the assessment is decided.
20765
21565
  */
20766
21566
  'filter[outcome]'?: 'competent' | 'not_yet_competent' | null;
21567
+ 'filter[created_at][gte]'?: string;
21568
+ 'filter[created_at][lte]'?: string;
21569
+ 'filter[updated_at][gte]'?: string;
21570
+ 'filter[updated_at][lte]'?: string;
20767
21571
  filter?: string;
20768
21572
  'filter[unexpected]'?: string;
20769
21573
  };
@@ -20778,6 +21582,10 @@ export type ListAssessmentsErrors = {
20778
21582
  * Forbidden
20779
21583
  */
20780
21584
  403: Problem;
21585
+ /**
21586
+ * Unprocessable Content
21587
+ */
21588
+ 422: Problem;
20781
21589
  };
20782
21590
  export type ListAssessmentsError = ListAssessmentsErrors[keyof ListAssessmentsErrors];
20783
21591
  export type ListAssessmentsResponses = {
@@ -20823,6 +21631,10 @@ export type ListAssessmentCriteriaData = {
20823
21631
  assessment_id: string;
20824
21632
  };
20825
21633
  query?: {
21634
+ 'filter[created_at][gte]'?: string;
21635
+ 'filter[created_at][lte]'?: string;
21636
+ 'filter[updated_at][gte]'?: string;
21637
+ 'filter[updated_at][lte]'?: string;
20826
21638
  filter?: string;
20827
21639
  'filter[unexpected]'?: string;
20828
21640
  };
@@ -20837,11 +21649,15 @@ export type ListAssessmentCriteriaErrors = {
20837
21649
  * Forbidden
20838
21650
  */
20839
21651
  403: Problem;
21652
+ /**
21653
+ * Unprocessable Content
21654
+ */
21655
+ 422: Problem;
20840
21656
  };
20841
21657
  export type ListAssessmentCriteriaError = ListAssessmentCriteriaErrors[keyof ListAssessmentCriteriaErrors];
20842
21658
  export type ListAssessmentCriteriaResponses = {
20843
21659
  /**
20844
- * Candidate sees a decided review
21660
+ * Success
20845
21661
  */
20846
21662
  200: {
20847
21663
  meta: Meta;
@@ -20884,6 +21700,8 @@ export type ListEvidenceItemsData = {
20884
21700
  * upload, form_submission, or certification.
20885
21701
  */
20886
21702
  'filter[kind]'?: 'upload' | 'form_submission' | 'certification';
21703
+ 'filter[created_at][gte]'?: string;
21704
+ 'filter[created_at][lte]'?: string;
20887
21705
  filter?: string;
20888
21706
  'filter[unexpected]'?: string;
20889
21707
  };
@@ -20898,6 +21716,10 @@ export type ListEvidenceItemsErrors = {
20898
21716
  * Forbidden
20899
21717
  */
20900
21718
  403: Problem;
21719
+ /**
21720
+ * Unprocessable Content
21721
+ */
21722
+ 422: Problem;
20901
21723
  };
20902
21724
  export type ListEvidenceItemsError = ListEvidenceItemsErrors[keyof ListEvidenceItemsErrors];
20903
21725
  export type ListEvidenceItemsResponses = {
@@ -21141,6 +21963,10 @@ export type ListLevelsData = {
21141
21963
  version_id: string;
21142
21964
  };
21143
21965
  query?: {
21966
+ 'filter[created_at][gte]'?: string;
21967
+ 'filter[created_at][lte]'?: string;
21968
+ 'filter[updated_at][gte]'?: string;
21969
+ 'filter[updated_at][lte]'?: string;
21144
21970
  filter?: string;
21145
21971
  'filter[unexpected]'?: string;
21146
21972
  };
@@ -21155,6 +21981,10 @@ export type ListLevelsErrors = {
21155
21981
  * Forbidden
21156
21982
  */
21157
21983
  403: Problem;
21984
+ /**
21985
+ * Unprocessable Content
21986
+ */
21987
+ 422: Problem;
21158
21988
  };
21159
21989
  export type ListLevelsError = ListLevelsErrors[keyof ListLevelsErrors];
21160
21990
  export type ListLevelsResponses = {
@@ -21314,6 +22144,10 @@ export type ListKeyActivitiesData = {
21314
22144
  level_id: string;
21315
22145
  };
21316
22146
  query?: {
22147
+ 'filter[created_at][gte]'?: string;
22148
+ 'filter[created_at][lte]'?: string;
22149
+ 'filter[updated_at][gte]'?: string;
22150
+ 'filter[updated_at][lte]'?: string;
21317
22151
  filter?: string;
21318
22152
  'filter[unexpected]'?: string;
21319
22153
  };
@@ -21328,6 +22162,10 @@ export type ListKeyActivitiesErrors = {
21328
22162
  * Forbidden
21329
22163
  */
21330
22164
  403: Problem;
22165
+ /**
22166
+ * Unprocessable Content
22167
+ */
22168
+ 422: Problem;
21331
22169
  };
21332
22170
  export type ListKeyActivitiesError = ListKeyActivitiesErrors[keyof ListKeyActivitiesErrors];
21333
22171
  export type ListKeyActivitiesResponses = {
@@ -21489,6 +22327,10 @@ export type ListCriteriaData = {
21489
22327
  key_activity_id: string;
21490
22328
  };
21491
22329
  query?: {
22330
+ 'filter[created_at][gte]'?: string;
22331
+ 'filter[created_at][lte]'?: string;
22332
+ 'filter[updated_at][gte]'?: string;
22333
+ 'filter[updated_at][lte]'?: string;
21492
22334
  filter?: string;
21493
22335
  'filter[unexpected]'?: string;
21494
22336
  };
@@ -21503,6 +22345,10 @@ export type ListCriteriaErrors = {
21503
22345
  * Forbidden
21504
22346
  */
21505
22347
  403: Problem;
22348
+ /**
22349
+ * Unprocessable Content
22350
+ */
22351
+ 422: Problem;
21506
22352
  };
21507
22353
  export type ListCriteriaError = ListCriteriaErrors[keyof ListCriteriaErrors];
21508
22354
  export type ListCriteriaResponses = {
@@ -21676,6 +22522,10 @@ export type ListQualificationsData = {
21676
22522
  * Standings at this tier.
21677
22523
  */
21678
22524
  'filter[level_sort_order]'?: number;
22525
+ 'filter[created_at][gte]'?: string;
22526
+ 'filter[created_at][lte]'?: string;
22527
+ 'filter[updated_at][gte]'?: string;
22528
+ 'filter[updated_at][lte]'?: string;
21679
22529
  filter?: string;
21680
22530
  'filter[unexpected]'?: string;
21681
22531
  /**
@@ -21700,6 +22550,10 @@ export type ListQualificationsErrors = {
21700
22550
  * Forbidden
21701
22551
  */
21702
22552
  403: Problem;
22553
+ /**
22554
+ * Unprocessable Content
22555
+ */
22556
+ 422: Problem;
21703
22557
  };
21704
22558
  export type ListQualificationsError = ListQualificationsErrors[keyof ListQualificationsErrors];
21705
22559
  export type ListQualificationsResponses = {
@@ -22123,6 +22977,10 @@ export type PromoteCompetencyStandardVersionErrors = {
22123
22977
  * Forbidden
22124
22978
  */
22125
22979
  403: Problem;
22980
+ /**
22981
+ * Not Found
22982
+ */
22983
+ 404: Problem;
22126
22984
  };
22127
22985
  export type PromoteCompetencyStandardVersionError = PromoteCompetencyStandardVersionErrors[keyof PromoteCompetencyStandardVersionErrors];
22128
22986
  export type PromoteCompetencyStandardVersionResponses = {
@@ -22157,6 +23015,10 @@ export type ListChecksData = {
22157
23015
  'filter[assignee_user_id]'?: string;
22158
23016
  'filter[time_due][gte]'?: string;
22159
23017
  'filter[time_due][lte]'?: string;
23018
+ 'filter[created_at][gte]'?: string;
23019
+ 'filter[created_at][lte]'?: string;
23020
+ 'filter[updated_at][gte]'?: string;
23021
+ 'filter[updated_at][lte]'?: string;
22160
23022
  filter?: string;
22161
23023
  'filter[unexpected]'?: string;
22162
23024
  /**
@@ -22732,6 +23594,36 @@ export type CreateFormSubmissionResponses = {
22732
23594
  201: FormSubmissionResponseObject;
22733
23595
  };
22734
23596
  export type CreateFormSubmissionResponse = CreateFormSubmissionResponses[keyof CreateFormSubmissionResponses];
23597
+ export type DeleteFormSubmissionData = {
23598
+ body?: never;
23599
+ path: {
23600
+ id: string;
23601
+ };
23602
+ query?: never;
23603
+ url: '/api/v1/form_submissions/{id}';
23604
+ };
23605
+ export type DeleteFormSubmissionErrors = {
23606
+ /**
23607
+ * Forbidden
23608
+ */
23609
+ 403: Problem;
23610
+ /**
23611
+ * Not Found
23612
+ */
23613
+ 404: Problem;
23614
+ /**
23615
+ * Unprocessable Content
23616
+ */
23617
+ 422: Problem;
23618
+ };
23619
+ export type DeleteFormSubmissionError = DeleteFormSubmissionErrors[keyof DeleteFormSubmissionErrors];
23620
+ export type DeleteFormSubmissionResponses = {
23621
+ /**
23622
+ * No Content
23623
+ */
23624
+ 204: void;
23625
+ };
23626
+ export type DeleteFormSubmissionResponse = DeleteFormSubmissionResponses[keyof DeleteFormSubmissionResponses];
22735
23627
  export type GetFormSubmissionData = {
22736
23628
  body?: never;
22737
23629
  path: {
@@ -22758,6 +23650,40 @@ export type GetFormSubmissionResponses = {
22758
23650
  200: FormSubmissionResponseObject;
22759
23651
  };
22760
23652
  export type GetFormSubmissionResponse = GetFormSubmissionResponses[keyof GetFormSubmissionResponses];
23653
+ export type UpdateFormSubmissionData = {
23654
+ body?: FormSubmissionUpdateParameters;
23655
+ path: {
23656
+ id: string;
23657
+ };
23658
+ query?: never;
23659
+ url: '/api/v1/form_submissions/{id}';
23660
+ };
23661
+ export type UpdateFormSubmissionErrors = {
23662
+ /**
23663
+ * Bad Request
23664
+ */
23665
+ 400: Problem;
23666
+ /**
23667
+ * Forbidden
23668
+ */
23669
+ 403: Problem;
23670
+ /**
23671
+ * Not Found
23672
+ */
23673
+ 404: Problem;
23674
+ /**
23675
+ * Unprocessable Content
23676
+ */
23677
+ 422: Problem;
23678
+ };
23679
+ export type UpdateFormSubmissionError = UpdateFormSubmissionErrors[keyof UpdateFormSubmissionErrors];
23680
+ export type UpdateFormSubmissionResponses = {
23681
+ /**
23682
+ * Success
23683
+ */
23684
+ 200: FormSubmissionResponseObject;
23685
+ };
23686
+ export type UpdateFormSubmissionResponse = UpdateFormSubmissionResponses[keyof UpdateFormSubmissionResponses];
22761
23687
  export type ListGroupUsersData = {
22762
23688
  body?: never;
22763
23689
  path: {
@@ -23520,6 +24446,67 @@ export type ListGoodFaithEffortExceptionsResponses = {
23520
24446
  200: JobGoodFaithEffortExceptionsResponseObject;
23521
24447
  };
23522
24448
  export type ListGoodFaithEffortExceptionsResponse = ListGoodFaithEffortExceptionsResponses[keyof ListGoodFaithEffortExceptionsResponses];
24449
+ export type CreateGoodFaithEffortExceptionData = {
24450
+ body: JobGoodFaithEffortExceptionParameters;
24451
+ path: {
24452
+ job_id: string;
24453
+ };
24454
+ query?: never;
24455
+ url: '/api/v1/jobs/{job_id}/pwa/apprenticeship/good_faith_effort_exceptions';
24456
+ };
24457
+ export type CreateGoodFaithEffortExceptionErrors = {
24458
+ /**
24459
+ * Bad Request
24460
+ */
24461
+ 400: Problem;
24462
+ /**
24463
+ * Forbidden
24464
+ */
24465
+ 403: Problem;
24466
+ /**
24467
+ * Not Found
24468
+ */
24469
+ 404: Problem;
24470
+ /**
24471
+ * Unprocessable Content (invalid signed id)
24472
+ */
24473
+ 422: Problem;
24474
+ };
24475
+ export type CreateGoodFaithEffortExceptionError = CreateGoodFaithEffortExceptionErrors[keyof CreateGoodFaithEffortExceptionErrors];
24476
+ export type CreateGoodFaithEffortExceptionResponses = {
24477
+ /**
24478
+ * Created
24479
+ */
24480
+ 201: JobGoodFaithEffortExceptionResponseObject;
24481
+ };
24482
+ export type CreateGoodFaithEffortExceptionResponse = CreateGoodFaithEffortExceptionResponses[keyof CreateGoodFaithEffortExceptionResponses];
24483
+ export type DeleteGoodFaithEffortExceptionData = {
24484
+ body?: never;
24485
+ path: {
24486
+ job_id: string;
24487
+ id: string;
24488
+ };
24489
+ query?: never;
24490
+ url: '/api/v1/jobs/{job_id}/pwa/apprenticeship/good_faith_effort_exceptions/{id}';
24491
+ };
24492
+ export type DeleteGoodFaithEffortExceptionErrors = {
24493
+ /**
24494
+ * Forbidden
24495
+ */
24496
+ 403: Problem;
24497
+ /**
24498
+ * Not Found
24499
+ */
24500
+ 404: Problem;
24501
+ };
24502
+ export type DeleteGoodFaithEffortExceptionError = DeleteGoodFaithEffortExceptionErrors[keyof DeleteGoodFaithEffortExceptionErrors];
24503
+ export type DeleteGoodFaithEffortExceptionResponses = {
24504
+ /**
24505
+ * No Content
24506
+ */
24507
+ 204: void;
24508
+ };
24509
+ export type DeleteGoodFaithEffortExceptionResponse = DeleteGoodFaithEffortExceptionResponses[keyof DeleteGoodFaithEffortExceptionResponses];
23523
24510
  export type GetGoodFaithEffortExceptionData = {
23524
24511
  body?: never;
23525
24512
  path: {
@@ -23547,6 +24534,37 @@ export type GetGoodFaithEffortExceptionResponses = {
23547
24534
  200: JobGoodFaithEffortExceptionResponseObject;
23548
24535
  };
23549
24536
  export type GetGoodFaithEffortExceptionResponse = GetGoodFaithEffortExceptionResponses[keyof GetGoodFaithEffortExceptionResponses];
24537
+ export type UpdateGoodFaithEffortExceptionData = {
24538
+ body: JobGoodFaithEffortExceptionUpdateParameters;
24539
+ path: {
24540
+ job_id: string;
24541
+ id: string;
24542
+ };
24543
+ query?: never;
24544
+ url: '/api/v1/jobs/{job_id}/pwa/apprenticeship/good_faith_effort_exceptions/{id}';
24545
+ };
24546
+ export type UpdateGoodFaithEffortExceptionErrors = {
24547
+ /**
24548
+ * Bad Request
24549
+ */
24550
+ 400: Problem;
24551
+ /**
24552
+ * Forbidden
24553
+ */
24554
+ 403: Problem;
24555
+ /**
24556
+ * Not Found
24557
+ */
24558
+ 404: Problem;
24559
+ };
24560
+ export type UpdateGoodFaithEffortExceptionError = UpdateGoodFaithEffortExceptionErrors[keyof UpdateGoodFaithEffortExceptionErrors];
24561
+ export type UpdateGoodFaithEffortExceptionResponses = {
24562
+ /**
24563
+ * Success
24564
+ */
24565
+ 200: JobGoodFaithEffortExceptionResponseObject;
24566
+ };
24567
+ export type UpdateGoodFaithEffortExceptionResponse = UpdateGoodFaithEffortExceptionResponses[keyof UpdateGoodFaithEffortExceptionResponses];
23550
24568
  export type ListCurePaymentsData = {
23551
24569
  body?: never;
23552
24570
  path: {
@@ -23590,6 +24608,67 @@ export type ListCurePaymentsResponses = {
23590
24608
  200: JobCurePaymentsResponseObject;
23591
24609
  };
23592
24610
  export type ListCurePaymentsResponse = ListCurePaymentsResponses[keyof ListCurePaymentsResponses];
24611
+ export type CreateCurePaymentData = {
24612
+ body: JobCurePaymentParameters;
24613
+ path: {
24614
+ job_id: string;
24615
+ };
24616
+ query?: never;
24617
+ url: '/api/v1/jobs/{job_id}/pwa/cure_payments';
24618
+ };
24619
+ export type CreateCurePaymentErrors = {
24620
+ /**
24621
+ * Bad Request
24622
+ */
24623
+ 400: Problem;
24624
+ /**
24625
+ * Forbidden
24626
+ */
24627
+ 403: Problem;
24628
+ /**
24629
+ * Not Found
24630
+ */
24631
+ 404: Problem;
24632
+ /**
24633
+ * Unprocessable Content
24634
+ */
24635
+ 422: Problem;
24636
+ };
24637
+ export type CreateCurePaymentError = CreateCurePaymentErrors[keyof CreateCurePaymentErrors];
24638
+ export type CreateCurePaymentResponses = {
24639
+ /**
24640
+ * Created
24641
+ */
24642
+ 201: JobCurePaymentResponseObject;
24643
+ };
24644
+ export type CreateCurePaymentResponse = CreateCurePaymentResponses[keyof CreateCurePaymentResponses];
24645
+ export type DeleteCurePaymentData = {
24646
+ body?: never;
24647
+ path: {
24648
+ job_id: string;
24649
+ id: string;
24650
+ };
24651
+ query?: never;
24652
+ url: '/api/v1/jobs/{job_id}/pwa/cure_payments/{id}';
24653
+ };
24654
+ export type DeleteCurePaymentErrors = {
24655
+ /**
24656
+ * Forbidden
24657
+ */
24658
+ 403: Problem;
24659
+ /**
24660
+ * Not Found
24661
+ */
24662
+ 404: Problem;
24663
+ };
24664
+ export type DeleteCurePaymentError = DeleteCurePaymentErrors[keyof DeleteCurePaymentErrors];
24665
+ export type DeleteCurePaymentResponses = {
24666
+ /**
24667
+ * No Content
24668
+ */
24669
+ 204: void;
24670
+ };
24671
+ export type DeleteCurePaymentResponse = DeleteCurePaymentResponses[keyof DeleteCurePaymentResponses];
23593
24672
  export type GetCurePaymentData = {
23594
24673
  body?: never;
23595
24674
  path: {
@@ -23617,6 +24696,41 @@ export type GetCurePaymentResponses = {
23617
24696
  200: JobCurePaymentResponseObject;
23618
24697
  };
23619
24698
  export type GetCurePaymentResponse = GetCurePaymentResponses[keyof GetCurePaymentResponses];
24699
+ export type UpdateCurePaymentData = {
24700
+ body: JobCurePaymentUpdateParameters;
24701
+ path: {
24702
+ job_id: string;
24703
+ id: string;
24704
+ };
24705
+ query?: never;
24706
+ url: '/api/v1/jobs/{job_id}/pwa/cure_payments/{id}';
24707
+ };
24708
+ export type UpdateCurePaymentErrors = {
24709
+ /**
24710
+ * Bad Request
24711
+ */
24712
+ 400: Problem;
24713
+ /**
24714
+ * Forbidden
24715
+ */
24716
+ 403: Problem;
24717
+ /**
24718
+ * Not Found
24719
+ */
24720
+ 404: Problem;
24721
+ /**
24722
+ * Unprocessable Content
24723
+ */
24724
+ 422: Problem;
24725
+ };
24726
+ export type UpdateCurePaymentError = UpdateCurePaymentErrors[keyof UpdateCurePaymentErrors];
24727
+ export type UpdateCurePaymentResponses = {
24728
+ /**
24729
+ * Success
24730
+ */
24731
+ 200: JobCurePaymentResponseObject;
24732
+ };
24733
+ export type UpdateCurePaymentResponse = UpdateCurePaymentResponses[keyof UpdateCurePaymentResponses];
23620
24734
  export type CreateJobTradeData = {
23621
24735
  body: PwaTradeParameters;
23622
24736
  path: {
@@ -23651,6 +24765,56 @@ export type CreateJobTradeResponses = {
23651
24765
  201: PwaTradeResponseObject;
23652
24766
  };
23653
24767
  export type CreateJobTradeResponse = CreateJobTradeResponses[keyof CreateJobTradeResponses];
24768
+ export type ShiftJobWageDeterminationRateRuleGenesisData = {
24769
+ body: PayRatesRuleGenesisParameters;
24770
+ headers: {
24771
+ /**
24772
+ * The rule family ETag. See "Version validators" in the API overview.
24773
+ */
24774
+ 'If-Match': string;
24775
+ };
24776
+ path: {
24777
+ job_id: string;
24778
+ wage_determination_id: string;
24779
+ rate_rule_id: string;
24780
+ };
24781
+ query?: never;
24782
+ url: '/api/v1/jobs/{job_id}/wage_determinations/{wage_determination_id}/rate_rules/{rate_rule_id}/genesis';
24783
+ };
24784
+ export type ShiftJobWageDeterminationRateRuleGenesisErrors = {
24785
+ /**
24786
+ * Bad Request
24787
+ */
24788
+ 400: Problem;
24789
+ /**
24790
+ * Forbidden
24791
+ */
24792
+ 403: Problem;
24793
+ /**
24794
+ * Not Found
24795
+ */
24796
+ 404: Problem;
24797
+ /**
24798
+ * Precondition Failed
24799
+ */
24800
+ 412: Problem;
24801
+ /**
24802
+ * Unprocessable Content
24803
+ */
24804
+ 422: Problem;
24805
+ /**
24806
+ * Precondition Required
24807
+ */
24808
+ 428: Problem;
24809
+ };
24810
+ export type ShiftJobWageDeterminationRateRuleGenesisError = ShiftJobWageDeterminationRateRuleGenesisErrors[keyof ShiftJobWageDeterminationRateRuleGenesisErrors];
24811
+ export type ShiftJobWageDeterminationRateRuleGenesisResponses = {
24812
+ /**
24813
+ * Success
24814
+ */
24815
+ 200: RateRuleResponseObject;
24816
+ };
24817
+ export type ShiftJobWageDeterminationRateRuleGenesisResponse = ShiftJobWageDeterminationRateRuleGenesisResponses[keyof ShiftJobWageDeterminationRateRuleGenesisResponses];
23654
24818
  export type ListRateRuleHistoryData = {
23655
24819
  body?: never;
23656
24820
  path: {
@@ -23692,6 +24856,233 @@ export type ListRateRuleHistoryResponses = {
23692
24856
  };
23693
24857
  };
23694
24858
  export type ListRateRuleHistoryResponse = ListRateRuleHistoryResponses[keyof ListRateRuleHistoryResponses];
24859
+ export type CancelJobWageDeterminationRateRuleScheduledChangesData = {
24860
+ body?: never;
24861
+ headers: {
24862
+ /**
24863
+ * The rule family ETag. See "Version validators" in the API overview.
24864
+ */
24865
+ 'If-Match': string;
24866
+ };
24867
+ path: {
24868
+ job_id: string;
24869
+ wage_determination_id: string;
24870
+ rate_rule_id: string;
24871
+ };
24872
+ query?: never;
24873
+ url: '/api/v1/jobs/{job_id}/wage_determinations/{wage_determination_id}/rate_rules/{rate_rule_id}/scheduled_changes';
24874
+ };
24875
+ export type CancelJobWageDeterminationRateRuleScheduledChangesErrors = {
24876
+ /**
24877
+ * Forbidden
24878
+ */
24879
+ 403: Problem;
24880
+ /**
24881
+ * Precondition Failed
24882
+ */
24883
+ 412: Problem;
24884
+ /**
24885
+ * Unprocessable Content
24886
+ */
24887
+ 422: Problem;
24888
+ /**
24889
+ * Precondition Required
24890
+ */
24891
+ 428: Problem;
24892
+ };
24893
+ export type CancelJobWageDeterminationRateRuleScheduledChangesError = CancelJobWageDeterminationRateRuleScheduledChangesErrors[keyof CancelJobWageDeterminationRateRuleScheduledChangesErrors];
24894
+ export type CancelJobWageDeterminationRateRuleScheduledChangesResponses = {
24895
+ /**
24896
+ * Success
24897
+ */
24898
+ 200: RateRuleResponseObject;
24899
+ };
24900
+ export type CancelJobWageDeterminationRateRuleScheduledChangesResponse = CancelJobWageDeterminationRateRuleScheduledChangesResponses[keyof CancelJobWageDeterminationRateRuleScheduledChangesResponses];
24901
+ export type ListJobWageDeterminationRateRuleScheduledChangesData = {
24902
+ body?: never;
24903
+ path: {
24904
+ job_id: string;
24905
+ wage_determination_id: string;
24906
+ rate_rule_id: string;
24907
+ };
24908
+ query?: {
24909
+ 'as_of[valid]'?: string;
24910
+ 'as_of[transaction]'?: string;
24911
+ };
24912
+ url: '/api/v1/jobs/{job_id}/wage_determinations/{wage_determination_id}/rate_rules/{rate_rule_id}/scheduled_changes';
24913
+ };
24914
+ export type ListJobWageDeterminationRateRuleScheduledChangesErrors = {
24915
+ /**
24916
+ * Bad Request
24917
+ */
24918
+ 400: Problem;
24919
+ /**
24920
+ * Forbidden
24921
+ */
24922
+ 403: Problem;
24923
+ /**
24924
+ * Not Found
24925
+ */
24926
+ 404: Problem;
24927
+ };
24928
+ export type ListJobWageDeterminationRateRuleScheduledChangesError = ListJobWageDeterminationRateRuleScheduledChangesErrors[keyof ListJobWageDeterminationRateRuleScheduledChangesErrors];
24929
+ export type ListJobWageDeterminationRateRuleScheduledChangesResponses = {
24930
+ /**
24931
+ * Success
24932
+ */
24933
+ 200: {
24934
+ meta: Meta;
24935
+ links: Links;
24936
+ data: Array<RateRuleHistoryVersionObject>;
24937
+ };
24938
+ };
24939
+ export type ListJobWageDeterminationRateRuleScheduledChangesResponse = ListJobWageDeterminationRateRuleScheduledChangesResponses[keyof ListJobWageDeterminationRateRuleScheduledChangesResponses];
24940
+ export type ScheduleJobWageDeterminationRateRuleChangeData = {
24941
+ body: PayRatesRuleScheduledChangeParameters;
24942
+ headers: {
24943
+ /**
24944
+ * The rule family ETag. See "Version validators" in the API overview.
24945
+ */
24946
+ 'If-Match': string;
24947
+ };
24948
+ path: {
24949
+ job_id: string;
24950
+ wage_determination_id: string;
24951
+ rate_rule_id: string;
24952
+ };
24953
+ query?: never;
24954
+ url: '/api/v1/jobs/{job_id}/wage_determinations/{wage_determination_id}/rate_rules/{rate_rule_id}/scheduled_changes';
24955
+ };
24956
+ export type ScheduleJobWageDeterminationRateRuleChangeErrors = {
24957
+ /**
24958
+ * Bad Request
24959
+ */
24960
+ 400: Problem;
24961
+ /**
24962
+ * Forbidden
24963
+ */
24964
+ 403: Problem;
24965
+ /**
24966
+ * Not Found
24967
+ */
24968
+ 404: Problem;
24969
+ /**
24970
+ * Precondition Failed
24971
+ */
24972
+ 412: Problem;
24973
+ /**
24974
+ * Precondition Required
24975
+ */
24976
+ 428: Problem;
24977
+ };
24978
+ export type ScheduleJobWageDeterminationRateRuleChangeError = ScheduleJobWageDeterminationRateRuleChangeErrors[keyof ScheduleJobWageDeterminationRateRuleChangeErrors];
24979
+ export type ScheduleJobWageDeterminationRateRuleChangeResponses = {
24980
+ /**
24981
+ * Success
24982
+ */
24983
+ 200: RateRuleResponseObject;
24984
+ /**
24985
+ * Success
24986
+ */
24987
+ 201: RateRuleResponseObject;
24988
+ };
24989
+ export type ScheduleJobWageDeterminationRateRuleChangeResponse = ScheduleJobWageDeterminationRateRuleChangeResponses[keyof ScheduleJobWageDeterminationRateRuleChangeResponses];
24990
+ export type CancelJobWageDeterminationRateRuleScheduledTerminationData = {
24991
+ body?: never;
24992
+ headers: {
24993
+ /**
24994
+ * The rule family ETag. See "Version validators" in the API overview.
24995
+ */
24996
+ 'If-Match': string;
24997
+ };
24998
+ path: {
24999
+ job_id: string;
25000
+ wage_determination_id: string;
25001
+ rate_rule_id: string;
25002
+ };
25003
+ query?: never;
25004
+ url: '/api/v1/jobs/{job_id}/wage_determinations/{wage_determination_id}/rate_rules/{rate_rule_id}/scheduled_termination';
25005
+ };
25006
+ export type CancelJobWageDeterminationRateRuleScheduledTerminationErrors = {
25007
+ /**
25008
+ * Forbidden
25009
+ */
25010
+ 403: Problem;
25011
+ /**
25012
+ * Precondition Failed
25013
+ */
25014
+ 412: Problem;
25015
+ /**
25016
+ * Unprocessable Content
25017
+ */
25018
+ 422: Problem;
25019
+ /**
25020
+ * Precondition Required
25021
+ */
25022
+ 428: Problem;
25023
+ };
25024
+ export type CancelJobWageDeterminationRateRuleScheduledTerminationError = CancelJobWageDeterminationRateRuleScheduledTerminationErrors[keyof CancelJobWageDeterminationRateRuleScheduledTerminationErrors];
25025
+ export type CancelJobWageDeterminationRateRuleScheduledTerminationResponses = {
25026
+ /**
25027
+ * Success
25028
+ */
25029
+ 200: RateRuleResponseObject;
25030
+ };
25031
+ export type CancelJobWageDeterminationRateRuleScheduledTerminationResponse = CancelJobWageDeterminationRateRuleScheduledTerminationResponses[keyof CancelJobWageDeterminationRateRuleScheduledTerminationResponses];
25032
+ export type ScheduleJobWageDeterminationRateRuleTerminationData = {
25033
+ body: PayRatesRuleScheduledTerminationParameters;
25034
+ headers: {
25035
+ /**
25036
+ * The rule family ETag. See "Version validators" in the API overview.
25037
+ */
25038
+ 'If-Match': string;
25039
+ };
25040
+ path: {
25041
+ job_id: string;
25042
+ wage_determination_id: string;
25043
+ rate_rule_id: string;
25044
+ };
25045
+ query?: never;
25046
+ url: '/api/v1/jobs/{job_id}/wage_determinations/{wage_determination_id}/rate_rules/{rate_rule_id}/scheduled_termination';
25047
+ };
25048
+ export type ScheduleJobWageDeterminationRateRuleTerminationErrors = {
25049
+ /**
25050
+ * Bad Request
25051
+ */
25052
+ 400: Problem;
25053
+ /**
25054
+ * Forbidden
25055
+ */
25056
+ 403: Problem;
25057
+ /**
25058
+ * Not Found
25059
+ */
25060
+ 404: Problem;
25061
+ /**
25062
+ * Conflict
25063
+ */
25064
+ 409: Problem;
25065
+ /**
25066
+ * Precondition Failed
25067
+ */
25068
+ 412: Problem;
25069
+ /**
25070
+ * Unprocessable Content
25071
+ */
25072
+ 422: Problem;
25073
+ /**
25074
+ * Precondition Required
25075
+ */
25076
+ 428: Problem;
25077
+ };
25078
+ export type ScheduleJobWageDeterminationRateRuleTerminationError = ScheduleJobWageDeterminationRateRuleTerminationErrors[keyof ScheduleJobWageDeterminationRateRuleTerminationErrors];
25079
+ export type ScheduleJobWageDeterminationRateRuleTerminationResponses = {
25080
+ /**
25081
+ * Success
25082
+ */
25083
+ 201: RateRuleResponseObject;
25084
+ };
25085
+ export type ScheduleJobWageDeterminationRateRuleTerminationResponse = ScheduleJobWageDeterminationRateRuleTerminationResponses[keyof ScheduleJobWageDeterminationRateRuleTerminationResponses];
23695
25086
  export type ListRateRulesData = {
23696
25087
  body?: never;
23697
25088
  path: {
@@ -23771,6 +25162,44 @@ export type CreateRateRuleResponses = {
23771
25162
  201: RateRuleResponseObject;
23772
25163
  };
23773
25164
  export type CreateRateRuleResponse = CreateRateRuleResponses[keyof CreateRateRuleResponses];
25165
+ export type DeleteJobWageDeterminationRateRuleData = {
25166
+ body?: never;
25167
+ headers: {
25168
+ /**
25169
+ * Rule family ETag. See "Version validators" in the API overview.
25170
+ */
25171
+ 'If-Match': string;
25172
+ };
25173
+ path: {
25174
+ job_id: string;
25175
+ wage_determination_id: string;
25176
+ id: string;
25177
+ };
25178
+ query?: never;
25179
+ url: '/api/v1/jobs/{job_id}/wage_determinations/{wage_determination_id}/rate_rules/{id}';
25180
+ };
25181
+ export type DeleteJobWageDeterminationRateRuleErrors = {
25182
+ /**
25183
+ * Forbidden
25184
+ */
25185
+ 403: Problem;
25186
+ /**
25187
+ * Precondition Failed
25188
+ */
25189
+ 412: Problem;
25190
+ /**
25191
+ * Precondition Required
25192
+ */
25193
+ 428: Problem;
25194
+ };
25195
+ export type DeleteJobWageDeterminationRateRuleError = DeleteJobWageDeterminationRateRuleErrors[keyof DeleteJobWageDeterminationRateRuleErrors];
25196
+ export type DeleteJobWageDeterminationRateRuleResponses = {
25197
+ /**
25198
+ * Success
25199
+ */
25200
+ 200: RateRuleResponseObject;
25201
+ };
25202
+ export type DeleteJobWageDeterminationRateRuleResponse = DeleteJobWageDeterminationRateRuleResponses[keyof DeleteJobWageDeterminationRateRuleResponses];
23774
25203
  export type GetRateRuleData = {
23775
25204
  body?: never;
23776
25205
  path: {
@@ -23804,6 +25233,56 @@ export type GetRateRuleResponses = {
23804
25233
  200: RateRuleResponseObject;
23805
25234
  };
23806
25235
  export type GetRateRuleResponse = GetRateRuleResponses[keyof GetRateRuleResponses];
25236
+ export type UpdateJobWageDeterminationRateRuleData = {
25237
+ body: PayRatesRuleUpdateParameters;
25238
+ headers: {
25239
+ /**
25240
+ * Rule family ETag. See "Version validators" in the API overview.
25241
+ */
25242
+ 'If-Match': string;
25243
+ };
25244
+ path: {
25245
+ job_id: string;
25246
+ wage_determination_id: string;
25247
+ id: string;
25248
+ };
25249
+ query?: never;
25250
+ url: '/api/v1/jobs/{job_id}/wage_determinations/{wage_determination_id}/rate_rules/{id}';
25251
+ };
25252
+ export type UpdateJobWageDeterminationRateRuleErrors = {
25253
+ /**
25254
+ * Bad Request
25255
+ */
25256
+ 400: Problem;
25257
+ /**
25258
+ * Forbidden
25259
+ */
25260
+ 403: Problem;
25261
+ /**
25262
+ * Not Found
25263
+ */
25264
+ 404: Problem;
25265
+ /**
25266
+ * Precondition Failed
25267
+ */
25268
+ 412: Problem;
25269
+ /**
25270
+ * Unprocessable Content
25271
+ */
25272
+ 422: Problem;
25273
+ /**
25274
+ * Precondition Required
25275
+ */
25276
+ 428: Problem;
25277
+ };
25278
+ export type UpdateJobWageDeterminationRateRuleError = UpdateJobWageDeterminationRateRuleErrors[keyof UpdateJobWageDeterminationRateRuleErrors];
25279
+ export type UpdateJobWageDeterminationRateRuleResponses = {
25280
+ /**
25281
+ * Success
25282
+ */
25283
+ 200: RateRuleResponseObject;
25284
+ };
25285
+ export type UpdateJobWageDeterminationRateRuleResponse = UpdateJobWageDeterminationRateRuleResponses[keyof UpdateJobWageDeterminationRateRuleResponses];
23807
25286
  export type ListJobSitesData = {
23808
25287
  body?: never;
23809
25288
  path: {
@@ -27152,6 +28631,10 @@ export type DeleteFringeBenefitPlanErrors = {
27152
28631
  * Not Found
27153
28632
  */
27154
28633
  404: Problem;
28634
+ /**
28635
+ * Unprocessable Content
28636
+ */
28637
+ 422: Problem;
27155
28638
  };
27156
28639
  export type DeleteFringeBenefitPlanError = DeleteFringeBenefitPlanErrors[keyof DeleteFringeBenefitPlanErrors];
27157
28640
  export type DeleteFringeBenefitPlanResponses = {
@@ -28330,6 +29813,10 @@ export type DeleteEmploymentScheduledChangeErrors = {
28330
29813
  * Precondition Failed
28331
29814
  */
28332
29815
  412: Problem;
29816
+ /**
29817
+ * Unprocessable Content
29818
+ */
29819
+ 422: Problem;
28333
29820
  /**
28334
29821
  * Precondition Required
28335
29822
  */
@@ -29517,6 +31004,56 @@ export type CreateProjectTradeResponses = {
29517
31004
  201: PwaTradeResponseObject;
29518
31005
  };
29519
31006
  export type CreateProjectTradeResponse = CreateProjectTradeResponses[keyof CreateProjectTradeResponses];
31007
+ export type ShiftProjectWageDeterminationRateRuleGenesisData = {
31008
+ body: PayRatesRuleGenesisParameters;
31009
+ headers: {
31010
+ /**
31011
+ * The rule family ETag. See "Version validators" in the API overview.
31012
+ */
31013
+ 'If-Match': string;
31014
+ };
31015
+ path: {
31016
+ project_id: string;
31017
+ wage_determination_id: string;
31018
+ rate_rule_id: string;
31019
+ };
31020
+ query?: never;
31021
+ url: '/api/v1/projects/{project_id}/wage_determinations/{wage_determination_id}/rate_rules/{rate_rule_id}/genesis';
31022
+ };
31023
+ export type ShiftProjectWageDeterminationRateRuleGenesisErrors = {
31024
+ /**
31025
+ * Bad Request
31026
+ */
31027
+ 400: Problem;
31028
+ /**
31029
+ * Forbidden
31030
+ */
31031
+ 403: Problem;
31032
+ /**
31033
+ * Not Found
31034
+ */
31035
+ 404: Problem;
31036
+ /**
31037
+ * Precondition Failed
31038
+ */
31039
+ 412: Problem;
31040
+ /**
31041
+ * Unprocessable Content
31042
+ */
31043
+ 422: Problem;
31044
+ /**
31045
+ * Precondition Required
31046
+ */
31047
+ 428: Problem;
31048
+ };
31049
+ export type ShiftProjectWageDeterminationRateRuleGenesisError = ShiftProjectWageDeterminationRateRuleGenesisErrors[keyof ShiftProjectWageDeterminationRateRuleGenesisErrors];
31050
+ export type ShiftProjectWageDeterminationRateRuleGenesisResponses = {
31051
+ /**
31052
+ * Success
31053
+ */
31054
+ 200: ProjectRateRuleResponseObject;
31055
+ };
31056
+ export type ShiftProjectWageDeterminationRateRuleGenesisResponse = ShiftProjectWageDeterminationRateRuleGenesisResponses[keyof ShiftProjectWageDeterminationRateRuleGenesisResponses];
29520
31057
  export type ListProjectWageDeterminationRateRuleHistoryData = {
29521
31058
  body?: never;
29522
31059
  path: {
@@ -29558,6 +31095,233 @@ export type ListProjectWageDeterminationRateRuleHistoryResponses = {
29558
31095
  };
29559
31096
  };
29560
31097
  export type ListProjectWageDeterminationRateRuleHistoryResponse = ListProjectWageDeterminationRateRuleHistoryResponses[keyof ListProjectWageDeterminationRateRuleHistoryResponses];
31098
+ export type CancelProjectWageDeterminationRateRuleScheduledChangesData = {
31099
+ body?: never;
31100
+ headers: {
31101
+ /**
31102
+ * The rule family ETag. See "Version validators" in the API overview.
31103
+ */
31104
+ 'If-Match': string;
31105
+ };
31106
+ path: {
31107
+ project_id: string;
31108
+ wage_determination_id: string;
31109
+ rate_rule_id: string;
31110
+ };
31111
+ query?: never;
31112
+ url: '/api/v1/projects/{project_id}/wage_determinations/{wage_determination_id}/rate_rules/{rate_rule_id}/scheduled_changes';
31113
+ };
31114
+ export type CancelProjectWageDeterminationRateRuleScheduledChangesErrors = {
31115
+ /**
31116
+ * Forbidden
31117
+ */
31118
+ 403: Problem;
31119
+ /**
31120
+ * Precondition Failed
31121
+ */
31122
+ 412: Problem;
31123
+ /**
31124
+ * Unprocessable Content
31125
+ */
31126
+ 422: Problem;
31127
+ /**
31128
+ * Precondition Required
31129
+ */
31130
+ 428: Problem;
31131
+ };
31132
+ export type CancelProjectWageDeterminationRateRuleScheduledChangesError = CancelProjectWageDeterminationRateRuleScheduledChangesErrors[keyof CancelProjectWageDeterminationRateRuleScheduledChangesErrors];
31133
+ export type CancelProjectWageDeterminationRateRuleScheduledChangesResponses = {
31134
+ /**
31135
+ * Success
31136
+ */
31137
+ 200: ProjectRateRuleResponseObject;
31138
+ };
31139
+ export type CancelProjectWageDeterminationRateRuleScheduledChangesResponse = CancelProjectWageDeterminationRateRuleScheduledChangesResponses[keyof CancelProjectWageDeterminationRateRuleScheduledChangesResponses];
31140
+ export type ListProjectWageDeterminationRateRuleScheduledChangesData = {
31141
+ body?: never;
31142
+ path: {
31143
+ project_id: string;
31144
+ wage_determination_id: string;
31145
+ rate_rule_id: string;
31146
+ };
31147
+ query?: {
31148
+ 'as_of[valid]'?: string;
31149
+ 'as_of[transaction]'?: string;
31150
+ };
31151
+ url: '/api/v1/projects/{project_id}/wage_determinations/{wage_determination_id}/rate_rules/{rate_rule_id}/scheduled_changes';
31152
+ };
31153
+ export type ListProjectWageDeterminationRateRuleScheduledChangesErrors = {
31154
+ /**
31155
+ * Bad Request
31156
+ */
31157
+ 400: Problem;
31158
+ /**
31159
+ * Forbidden
31160
+ */
31161
+ 403: Problem;
31162
+ /**
31163
+ * Not Found
31164
+ */
31165
+ 404: Problem;
31166
+ };
31167
+ export type ListProjectWageDeterminationRateRuleScheduledChangesError = ListProjectWageDeterminationRateRuleScheduledChangesErrors[keyof ListProjectWageDeterminationRateRuleScheduledChangesErrors];
31168
+ export type ListProjectWageDeterminationRateRuleScheduledChangesResponses = {
31169
+ /**
31170
+ * Success
31171
+ */
31172
+ 200: {
31173
+ meta: Meta;
31174
+ links: Links;
31175
+ data: Array<ProjectRateRuleHistoryVersionObject>;
31176
+ };
31177
+ };
31178
+ export type ListProjectWageDeterminationRateRuleScheduledChangesResponse = ListProjectWageDeterminationRateRuleScheduledChangesResponses[keyof ListProjectWageDeterminationRateRuleScheduledChangesResponses];
31179
+ export type ScheduleProjectWageDeterminationRateRuleChangeData = {
31180
+ body: PayRatesRuleScheduledChangeParameters;
31181
+ headers: {
31182
+ /**
31183
+ * The rule family ETag. See "Version validators" in the API overview.
31184
+ */
31185
+ 'If-Match': string;
31186
+ };
31187
+ path: {
31188
+ project_id: string;
31189
+ wage_determination_id: string;
31190
+ rate_rule_id: string;
31191
+ };
31192
+ query?: never;
31193
+ url: '/api/v1/projects/{project_id}/wage_determinations/{wage_determination_id}/rate_rules/{rate_rule_id}/scheduled_changes';
31194
+ };
31195
+ export type ScheduleProjectWageDeterminationRateRuleChangeErrors = {
31196
+ /**
31197
+ * Bad Request
31198
+ */
31199
+ 400: Problem;
31200
+ /**
31201
+ * Forbidden
31202
+ */
31203
+ 403: Problem;
31204
+ /**
31205
+ * Not Found
31206
+ */
31207
+ 404: Problem;
31208
+ /**
31209
+ * Precondition Failed
31210
+ */
31211
+ 412: Problem;
31212
+ /**
31213
+ * Precondition Required
31214
+ */
31215
+ 428: Problem;
31216
+ };
31217
+ export type ScheduleProjectWageDeterminationRateRuleChangeError = ScheduleProjectWageDeterminationRateRuleChangeErrors[keyof ScheduleProjectWageDeterminationRateRuleChangeErrors];
31218
+ export type ScheduleProjectWageDeterminationRateRuleChangeResponses = {
31219
+ /**
31220
+ * Success
31221
+ */
31222
+ 200: ProjectRateRuleResponseObject;
31223
+ /**
31224
+ * Success
31225
+ */
31226
+ 201: ProjectRateRuleResponseObject;
31227
+ };
31228
+ export type ScheduleProjectWageDeterminationRateRuleChangeResponse = ScheduleProjectWageDeterminationRateRuleChangeResponses[keyof ScheduleProjectWageDeterminationRateRuleChangeResponses];
31229
+ export type CancelProjectWageDeterminationRateRuleScheduledTerminationData = {
31230
+ body?: never;
31231
+ headers: {
31232
+ /**
31233
+ * The rule family ETag. See "Version validators" in the API overview.
31234
+ */
31235
+ 'If-Match': string;
31236
+ };
31237
+ path: {
31238
+ project_id: string;
31239
+ wage_determination_id: string;
31240
+ rate_rule_id: string;
31241
+ };
31242
+ query?: never;
31243
+ url: '/api/v1/projects/{project_id}/wage_determinations/{wage_determination_id}/rate_rules/{rate_rule_id}/scheduled_termination';
31244
+ };
31245
+ export type CancelProjectWageDeterminationRateRuleScheduledTerminationErrors = {
31246
+ /**
31247
+ * Forbidden
31248
+ */
31249
+ 403: Problem;
31250
+ /**
31251
+ * Precondition Failed
31252
+ */
31253
+ 412: Problem;
31254
+ /**
31255
+ * Unprocessable Content
31256
+ */
31257
+ 422: Problem;
31258
+ /**
31259
+ * Precondition Required
31260
+ */
31261
+ 428: Problem;
31262
+ };
31263
+ export type CancelProjectWageDeterminationRateRuleScheduledTerminationError = CancelProjectWageDeterminationRateRuleScheduledTerminationErrors[keyof CancelProjectWageDeterminationRateRuleScheduledTerminationErrors];
31264
+ export type CancelProjectWageDeterminationRateRuleScheduledTerminationResponses = {
31265
+ /**
31266
+ * Success
31267
+ */
31268
+ 200: ProjectRateRuleResponseObject;
31269
+ };
31270
+ export type CancelProjectWageDeterminationRateRuleScheduledTerminationResponse = CancelProjectWageDeterminationRateRuleScheduledTerminationResponses[keyof CancelProjectWageDeterminationRateRuleScheduledTerminationResponses];
31271
+ export type ScheduleProjectWageDeterminationRateRuleTerminationData = {
31272
+ body: PayRatesRuleScheduledTerminationParameters;
31273
+ headers: {
31274
+ /**
31275
+ * The rule family ETag. See "Version validators" in the API overview.
31276
+ */
31277
+ 'If-Match': string;
31278
+ };
31279
+ path: {
31280
+ project_id: string;
31281
+ wage_determination_id: string;
31282
+ rate_rule_id: string;
31283
+ };
31284
+ query?: never;
31285
+ url: '/api/v1/projects/{project_id}/wage_determinations/{wage_determination_id}/rate_rules/{rate_rule_id}/scheduled_termination';
31286
+ };
31287
+ export type ScheduleProjectWageDeterminationRateRuleTerminationErrors = {
31288
+ /**
31289
+ * Bad Request
31290
+ */
31291
+ 400: Problem;
31292
+ /**
31293
+ * Forbidden
31294
+ */
31295
+ 403: Problem;
31296
+ /**
31297
+ * Not Found
31298
+ */
31299
+ 404: Problem;
31300
+ /**
31301
+ * Conflict
31302
+ */
31303
+ 409: Problem;
31304
+ /**
31305
+ * Precondition Failed
31306
+ */
31307
+ 412: Problem;
31308
+ /**
31309
+ * Unprocessable Content
31310
+ */
31311
+ 422: Problem;
31312
+ /**
31313
+ * Precondition Required
31314
+ */
31315
+ 428: Problem;
31316
+ };
31317
+ export type ScheduleProjectWageDeterminationRateRuleTerminationError = ScheduleProjectWageDeterminationRateRuleTerminationErrors[keyof ScheduleProjectWageDeterminationRateRuleTerminationErrors];
31318
+ export type ScheduleProjectWageDeterminationRateRuleTerminationResponses = {
31319
+ /**
31320
+ * Success
31321
+ */
31322
+ 201: ProjectRateRuleResponseObject;
31323
+ };
31324
+ export type ScheduleProjectWageDeterminationRateRuleTerminationResponse = ScheduleProjectWageDeterminationRateRuleTerminationResponses[keyof ScheduleProjectWageDeterminationRateRuleTerminationResponses];
29561
31325
  export type ListProjectWageDeterminationRateRulesData = {
29562
31326
  body?: never;
29563
31327
  path: {
@@ -29633,6 +31397,44 @@ export type CreateProjectWageDeterminationRateRuleResponses = {
29633
31397
  201: ProjectRateRuleResponseObject;
29634
31398
  };
29635
31399
  export type CreateProjectWageDeterminationRateRuleResponse = CreateProjectWageDeterminationRateRuleResponses[keyof CreateProjectWageDeterminationRateRuleResponses];
31400
+ export type DeleteProjectWageDeterminationRateRuleData = {
31401
+ body?: never;
31402
+ headers: {
31403
+ /**
31404
+ * Rule family ETag. See "Version validators" in the API overview.
31405
+ */
31406
+ 'If-Match': string;
31407
+ };
31408
+ path: {
31409
+ project_id: string;
31410
+ wage_determination_id: string;
31411
+ id: string;
31412
+ };
31413
+ query?: never;
31414
+ url: '/api/v1/projects/{project_id}/wage_determinations/{wage_determination_id}/rate_rules/{id}';
31415
+ };
31416
+ export type DeleteProjectWageDeterminationRateRuleErrors = {
31417
+ /**
31418
+ * Forbidden
31419
+ */
31420
+ 403: Problem;
31421
+ /**
31422
+ * Precondition Failed
31423
+ */
31424
+ 412: Problem;
31425
+ /**
31426
+ * Precondition Required
31427
+ */
31428
+ 428: Problem;
31429
+ };
31430
+ export type DeleteProjectWageDeterminationRateRuleError = DeleteProjectWageDeterminationRateRuleErrors[keyof DeleteProjectWageDeterminationRateRuleErrors];
31431
+ export type DeleteProjectWageDeterminationRateRuleResponses = {
31432
+ /**
31433
+ * Success
31434
+ */
31435
+ 200: ProjectRateRuleResponseObject;
31436
+ };
31437
+ export type DeleteProjectWageDeterminationRateRuleResponse = DeleteProjectWageDeterminationRateRuleResponses[keyof DeleteProjectWageDeterminationRateRuleResponses];
29636
31438
  export type GetProjectWageDeterminationRateRuleData = {
29637
31439
  body?: never;
29638
31440
  path: {
@@ -29666,6 +31468,56 @@ export type GetProjectWageDeterminationRateRuleResponses = {
29666
31468
  200: ProjectRateRuleResponseObject;
29667
31469
  };
29668
31470
  export type GetProjectWageDeterminationRateRuleResponse = GetProjectWageDeterminationRateRuleResponses[keyof GetProjectWageDeterminationRateRuleResponses];
31471
+ export type UpdateProjectWageDeterminationRateRuleData = {
31472
+ body: PayRatesRuleUpdateParameters;
31473
+ headers: {
31474
+ /**
31475
+ * Rule family ETag. See "Version validators" in the API overview.
31476
+ */
31477
+ 'If-Match': string;
31478
+ };
31479
+ path: {
31480
+ project_id: string;
31481
+ wage_determination_id: string;
31482
+ id: string;
31483
+ };
31484
+ query?: never;
31485
+ url: '/api/v1/projects/{project_id}/wage_determinations/{wage_determination_id}/rate_rules/{id}';
31486
+ };
31487
+ export type UpdateProjectWageDeterminationRateRuleErrors = {
31488
+ /**
31489
+ * Bad Request
31490
+ */
31491
+ 400: Problem;
31492
+ /**
31493
+ * Forbidden
31494
+ */
31495
+ 403: Problem;
31496
+ /**
31497
+ * Not Found
31498
+ */
31499
+ 404: Problem;
31500
+ /**
31501
+ * Precondition Failed
31502
+ */
31503
+ 412: Problem;
31504
+ /**
31505
+ * Unprocessable Content
31506
+ */
31507
+ 422: Problem;
31508
+ /**
31509
+ * Precondition Required
31510
+ */
31511
+ 428: Problem;
31512
+ };
31513
+ export type UpdateProjectWageDeterminationRateRuleError = UpdateProjectWageDeterminationRateRuleErrors[keyof UpdateProjectWageDeterminationRateRuleErrors];
31514
+ export type UpdateProjectWageDeterminationRateRuleResponses = {
31515
+ /**
31516
+ * Success
31517
+ */
31518
+ 200: ProjectRateRuleResponseObject;
31519
+ };
31520
+ export type UpdateProjectWageDeterminationRateRuleResponse = UpdateProjectWageDeterminationRateRuleResponses[keyof UpdateProjectWageDeterminationRateRuleResponses];
29669
31521
  export type ListProjectSitesData = {
29670
31522
  body?: never;
29671
31523
  path: {
@@ -30277,32 +32129,273 @@ export type ScheduleProjectWageDeterminationTerminationErrors = {
30277
32129
  */
30278
32130
  428: Problem;
30279
32131
  };
30280
- export type ScheduleProjectWageDeterminationTerminationError = ScheduleProjectWageDeterminationTerminationErrors[keyof ScheduleProjectWageDeterminationTerminationErrors];
30281
- export type ScheduleProjectWageDeterminationTerminationResponses = {
32132
+ export type ScheduleProjectWageDeterminationTerminationError = ScheduleProjectWageDeterminationTerminationErrors[keyof ScheduleProjectWageDeterminationTerminationErrors];
32133
+ export type ScheduleProjectWageDeterminationTerminationResponses = {
32134
+ /**
32135
+ * Created
32136
+ */
32137
+ 201: ProjectWageDeterminationResponseObject;
32138
+ };
32139
+ export type ScheduleProjectWageDeterminationTerminationResponse = ScheduleProjectWageDeterminationTerminationResponses[keyof ScheduleProjectWageDeterminationTerminationResponses];
32140
+ export type ListProjectWageDeterminationsData = {
32141
+ body?: never;
32142
+ path: {
32143
+ project_id: string;
32144
+ };
32145
+ query?: {
32146
+ /**
32147
+ * Read the version valid at this point in time. Defaults to now. Needs a UTC offset (`2026-03-01T00:00:00Z`); a value without one is a `422`.
32148
+ */
32149
+ 'as_of[valid]'?: string;
32150
+ as_of?: string;
32151
+ 'as_of[bogus_axis]'?: string;
32152
+ 'as_of[valid][gte]'?: string;
32153
+ 'as_of[transaction]'?: string;
32154
+ };
32155
+ url: '/api/v1/projects/{project_id}/wage_determinations';
32156
+ };
32157
+ export type ListProjectWageDeterminationsErrors = {
32158
+ /**
32159
+ * Bad Request
32160
+ */
32161
+ 400: Problem;
32162
+ /**
32163
+ * Forbidden
32164
+ */
32165
+ 403: Problem;
32166
+ /**
32167
+ * Unprocessable Content
32168
+ */
32169
+ 422: Problem;
32170
+ };
32171
+ export type ListProjectWageDeterminationsError = ListProjectWageDeterminationsErrors[keyof ListProjectWageDeterminationsErrors];
32172
+ export type ListProjectWageDeterminationsResponses = {
32173
+ /**
32174
+ * Success
32175
+ */
32176
+ 200: {
32177
+ meta: Meta;
32178
+ links: Links;
32179
+ data: Array<ProjectWageDeterminationResponseObject>;
32180
+ };
32181
+ };
32182
+ export type ListProjectWageDeterminationsResponse = ListProjectWageDeterminationsResponses[keyof ListProjectWageDeterminationsResponses];
32183
+ export type CreateProjectWageDeterminationData = {
32184
+ body: ProjectWageDeterminationParameters;
32185
+ path: {
32186
+ project_id: string;
32187
+ };
32188
+ query?: never;
32189
+ url: '/api/v1/projects/{project_id}/wage_determinations';
32190
+ };
32191
+ export type CreateProjectWageDeterminationErrors = {
32192
+ /**
32193
+ * Bad Request
32194
+ */
32195
+ 400: Problem;
32196
+ /**
32197
+ * Forbidden
32198
+ */
32199
+ 403: Problem;
32200
+ /**
32201
+ * Not Found
32202
+ */
32203
+ 404: Problem;
32204
+ /**
32205
+ * Unprocessable Content
32206
+ */
32207
+ 422: Problem;
32208
+ };
32209
+ export type CreateProjectWageDeterminationError = CreateProjectWageDeterminationErrors[keyof CreateProjectWageDeterminationErrors];
32210
+ export type CreateProjectWageDeterminationResponses = {
32211
+ /**
32212
+ * Created
32213
+ */
32214
+ 201: ProjectWageDeterminationResponseObject;
32215
+ };
32216
+ export type CreateProjectWageDeterminationResponse = CreateProjectWageDeterminationResponses[keyof CreateProjectWageDeterminationResponses];
32217
+ export type DeleteProjectWageDeterminationData = {
32218
+ body?: never;
32219
+ headers: {
32220
+ /**
32221
+ * Version validator this write is composed against — the `ETag` from a read of this wage determination, or `*` to write against whatever exists. See "Version validators" in the API overview.
32222
+ */
32223
+ 'If-Match': string;
32224
+ };
32225
+ path: {
32226
+ project_id: string;
32227
+ id: string;
32228
+ };
32229
+ query?: never;
32230
+ url: '/api/v1/projects/{project_id}/wage_determinations/{id}';
32231
+ };
32232
+ export type DeleteProjectWageDeterminationErrors = {
32233
+ /**
32234
+ * Forbidden
32235
+ */
32236
+ 403: Problem;
32237
+ /**
32238
+ * Not Found
32239
+ */
32240
+ 404: Problem;
32241
+ /**
32242
+ * Precondition Failed
32243
+ */
32244
+ 412: Problem;
32245
+ /**
32246
+ * Unprocessable Content
32247
+ */
32248
+ 422: Problem;
32249
+ /**
32250
+ * Precondition Required
32251
+ */
32252
+ 428: Problem;
32253
+ };
32254
+ export type DeleteProjectWageDeterminationError = DeleteProjectWageDeterminationErrors[keyof DeleteProjectWageDeterminationErrors];
32255
+ export type DeleteProjectWageDeterminationResponses = {
32256
+ /**
32257
+ * Success
32258
+ */
32259
+ 200: ProjectWageDeterminationResponseObject;
32260
+ };
32261
+ export type DeleteProjectWageDeterminationResponse = DeleteProjectWageDeterminationResponses[keyof DeleteProjectWageDeterminationResponses];
32262
+ export type GetProjectWageDeterminationData = {
32263
+ body?: never;
32264
+ path: {
32265
+ project_id: string;
32266
+ id: string;
32267
+ };
32268
+ query?: {
32269
+ /**
32270
+ * Read the version valid at this point in time. Defaults to now. Needs a UTC offset (`2026-03-01T00:00:00Z`); a value without one is a `422`.
32271
+ */
32272
+ 'as_of[valid]'?: string;
32273
+ };
32274
+ url: '/api/v1/projects/{project_id}/wage_determinations/{id}';
32275
+ };
32276
+ export type GetProjectWageDeterminationErrors = {
32277
+ /**
32278
+ * Forbidden
32279
+ */
32280
+ 403: Problem;
32281
+ /**
32282
+ * Not Found
32283
+ */
32284
+ 404: Problem;
32285
+ };
32286
+ export type GetProjectWageDeterminationError = GetProjectWageDeterminationErrors[keyof GetProjectWageDeterminationErrors];
32287
+ export type GetProjectWageDeterminationResponses = {
32288
+ /**
32289
+ * Success
32290
+ */
32291
+ 200: ProjectWageDeterminationResponseObject;
32292
+ };
32293
+ export type GetProjectWageDeterminationResponse = GetProjectWageDeterminationResponses[keyof GetProjectWageDeterminationResponses];
32294
+ export type UpdateProjectWageDeterminationData = {
32295
+ body: ProjectWageDeterminationUpdateParameters;
32296
+ headers: {
32297
+ /**
32298
+ * Version validator this write is composed against — the `ETag` from a read of this wage determination, or `*` to write against whatever exists. See "Version validators" in the API overview.
32299
+ */
32300
+ 'If-Match': string;
32301
+ };
32302
+ path: {
32303
+ project_id: string;
32304
+ id: string;
32305
+ };
32306
+ query?: never;
32307
+ url: '/api/v1/projects/{project_id}/wage_determinations/{id}';
32308
+ };
32309
+ export type UpdateProjectWageDeterminationErrors = {
32310
+ /**
32311
+ * Bad Request
32312
+ */
32313
+ 400: Problem;
32314
+ /**
32315
+ * Forbidden
32316
+ */
32317
+ 403: Problem;
32318
+ /**
32319
+ * Not Found
32320
+ */
32321
+ 404: Problem;
32322
+ /**
32323
+ * Conflict
32324
+ */
32325
+ 409: Problem;
32326
+ /**
32327
+ * Precondition Failed
32328
+ */
32329
+ 412: Problem;
32330
+ /**
32331
+ * Unprocessable Content
32332
+ */
32333
+ 422: Problem;
32334
+ /**
32335
+ * Precondition Required
32336
+ */
32337
+ 428: Problem;
32338
+ };
32339
+ export type UpdateProjectWageDeterminationError = UpdateProjectWageDeterminationErrors[keyof UpdateProjectWageDeterminationErrors];
32340
+ export type UpdateProjectWageDeterminationResponses = {
30282
32341
  /**
30283
- * Created
32342
+ * Success
30284
32343
  */
30285
- 201: ProjectWageDeterminationResponseObject;
32344
+ 200: ProjectWageDeterminationResponseObject;
30286
32345
  };
30287
- export type ScheduleProjectWageDeterminationTerminationResponse = ScheduleProjectWageDeterminationTerminationResponses[keyof ScheduleProjectWageDeterminationTerminationResponses];
30288
- export type ListProjectWageDeterminationsData = {
32346
+ export type UpdateProjectWageDeterminationResponse = UpdateProjectWageDeterminationResponses[keyof UpdateProjectWageDeterminationResponses];
32347
+ export type ListProjectsData = {
30289
32348
  body?: never;
30290
- path: {
30291
- project_id: string;
30292
- };
32349
+ path?: never;
30293
32350
  query?: {
30294
32351
  /**
30295
- * Read the version valid at this point in time. Defaults to now. Needs a UTC offset (`2026-03-01T00:00:00Z`); a value without one is a `422`.
32352
+ * Return only projects whose federal PWA mode equals this value (one of all, pw_only, ap_only, none).
30296
32353
  */
30297
- 'as_of[valid]'?: string;
30298
- as_of?: string;
30299
- 'as_of[bogus_axis]'?: string;
30300
- 'as_of[valid][gte]'?: string;
30301
- 'as_of[transaction]'?: string;
32354
+ 'filter[federal_pwa_mode]'?: 'all' | 'pw_only' | 'ap_only' | 'none';
32355
+ /**
32356
+ * Return only projects whose regional PWA mode equals this value (one of all, pw_only, ap_only, none).
32357
+ */
32358
+ 'filter[regional_pwa_mode]'?: 'all' | 'pw_only' | 'ap_only' | 'none';
32359
+ /**
32360
+ * Return only projects whose external_id matches this value exactly.
32361
+ */
32362
+ 'filter[external_id]'?: string;
32363
+ /**
32364
+ * Fuzzy-matches the project name (trigram word-similarity). Matches the name column only — not external_id.
32365
+ */
32366
+ 'filter[name]'?: string;
32367
+ /**
32368
+ * Return only projects whose owned_by_company_id matches this value exactly.
32369
+ */
32370
+ 'filter[owned_by_company_id]'?: string;
32371
+ /**
32372
+ * Return only visible projects that have this job.
32373
+ */
32374
+ 'filter[job_id]'?: string;
32375
+ /**
32376
+ * Return only visible projects that have this site.
32377
+ */
32378
+ 'filter[site_id]'?: string;
32379
+ 'filter[created_at][gte]'?: string;
32380
+ 'filter[created_at][lte]'?: string;
32381
+ 'filter[updated_at][gte]'?: string;
32382
+ 'filter[updated_at][lte]'?: string;
32383
+ filter?: string;
32384
+ 'filter[unexpected]'?: string;
32385
+ /**
32386
+ * This pagination cursor corresponds to the cursor value found in the response in
32387
+ * `meta.page.next_cursor`.
32388
+ */
32389
+ 'page[cursor]'?: string;
32390
+ /**
32391
+ * Maximum number of records to return per page. Defaults to 20. A value above 100 is capped to 100 rather than rejected; a value that is zero, negative, or not an integer is rejected with a `400`.
32392
+ */
32393
+ 'page[limit]'?: number;
32394
+ page?: string;
30302
32395
  };
30303
- url: '/api/v1/projects/{project_id}/wage_determinations';
32396
+ url: '/api/v1/projects';
30304
32397
  };
30305
- export type ListProjectWageDeterminationsErrors = {
32398
+ export type ListProjectsErrors = {
30306
32399
  /**
30307
32400
  * Bad Request
30308
32401
  */
@@ -30316,27 +32409,25 @@ export type ListProjectWageDeterminationsErrors = {
30316
32409
  */
30317
32410
  422: Problem;
30318
32411
  };
30319
- export type ListProjectWageDeterminationsError = ListProjectWageDeterminationsErrors[keyof ListProjectWageDeterminationsErrors];
30320
- export type ListProjectWageDeterminationsResponses = {
32412
+ export type ListProjectsError = ListProjectsErrors[keyof ListProjectsErrors];
32413
+ export type ListProjectsResponses = {
30321
32414
  /**
30322
32415
  * Success
30323
32416
  */
30324
32417
  200: {
30325
32418
  meta: Meta;
30326
32419
  links: Links;
30327
- data: Array<ProjectWageDeterminationResponseObject>;
32420
+ data: Array<ProjectResponseObject>;
30328
32421
  };
30329
32422
  };
30330
- export type ListProjectWageDeterminationsResponse = ListProjectWageDeterminationsResponses[keyof ListProjectWageDeterminationsResponses];
30331
- export type CreateProjectWageDeterminationData = {
30332
- body: ProjectWageDeterminationParameters;
30333
- path: {
30334
- project_id: string;
30335
- };
32423
+ export type ListProjectsResponse = ListProjectsResponses[keyof ListProjectsResponses];
32424
+ export type CreateProjectData = {
32425
+ body: ProjectParameters;
32426
+ path?: never;
30336
32427
  query?: never;
30337
- url: '/api/v1/projects/{project_id}/wage_determinations';
32428
+ url: '/api/v1/projects';
30338
32429
  };
30339
- export type CreateProjectWageDeterminationErrors = {
32430
+ export type CreateProjectErrors = {
30340
32431
  /**
30341
32432
  * Bad Request
30342
32433
  */
@@ -30350,34 +32441,30 @@ export type CreateProjectWageDeterminationErrors = {
30350
32441
  */
30351
32442
  404: Problem;
30352
32443
  /**
30353
- * Unprocessable Content
32444
+ * Unprocessable Content (invalid signed id)
30354
32445
  */
30355
32446
  422: Problem;
30356
32447
  };
30357
- export type CreateProjectWageDeterminationError = CreateProjectWageDeterminationErrors[keyof CreateProjectWageDeterminationErrors];
30358
- export type CreateProjectWageDeterminationResponses = {
32448
+ export type CreateProjectError = CreateProjectErrors[keyof CreateProjectErrors];
32449
+ export type CreateProjectResponses = {
30359
32450
  /**
30360
32451
  * Created
30361
32452
  */
30362
- 201: ProjectWageDeterminationResponseObject;
32453
+ 201: ProjectResponseObject;
30363
32454
  };
30364
- export type CreateProjectWageDeterminationResponse = CreateProjectWageDeterminationResponses[keyof CreateProjectWageDeterminationResponses];
30365
- export type DeleteProjectWageDeterminationData = {
32455
+ export type CreateProjectResponse = CreateProjectResponses[keyof CreateProjectResponses];
32456
+ export type GetProjectData = {
30366
32457
  body?: never;
30367
- headers: {
32458
+ path: {
30368
32459
  /**
30369
- * Version validator this write is composed against — the `ETag` from a read of this wage determination, or `*` to write against whatever exists. See "Version validators" in the API overview.
32460
+ * Unique identifier of the project (UUID).
30370
32461
  */
30371
- 'If-Match': string;
30372
- };
30373
- path: {
30374
- project_id: string;
30375
32462
  id: string;
30376
32463
  };
30377
32464
  query?: never;
30378
- url: '/api/v1/projects/{project_id}/wage_determinations/{id}';
32465
+ url: '/api/v1/projects/{id}';
30379
32466
  };
30380
- export type DeleteProjectWageDeterminationErrors = {
32467
+ export type GetProjectErrors = {
30381
32468
  /**
30382
32469
  * Forbidden
30383
32470
  */
@@ -30386,75 +32473,27 @@ export type DeleteProjectWageDeterminationErrors = {
30386
32473
  * Not Found
30387
32474
  */
30388
32475
  404: Problem;
30389
- /**
30390
- * Precondition Failed
30391
- */
30392
- 412: Problem;
30393
- /**
30394
- * Unprocessable Content
30395
- */
30396
- 422: Problem;
30397
- /**
30398
- * Precondition Required
30399
- */
30400
- 428: Problem;
30401
32476
  };
30402
- export type DeleteProjectWageDeterminationError = DeleteProjectWageDeterminationErrors[keyof DeleteProjectWageDeterminationErrors];
30403
- export type DeleteProjectWageDeterminationResponses = {
32477
+ export type GetProjectError = GetProjectErrors[keyof GetProjectErrors];
32478
+ export type GetProjectResponses = {
30404
32479
  /**
30405
32480
  * Success
30406
32481
  */
30407
- 200: ProjectWageDeterminationResponseObject;
32482
+ 200: ProjectResponseObject;
30408
32483
  };
30409
- export type DeleteProjectWageDeterminationResponse = DeleteProjectWageDeterminationResponses[keyof DeleteProjectWageDeterminationResponses];
30410
- export type GetProjectWageDeterminationData = {
30411
- body?: never;
32484
+ export type GetProjectResponse = GetProjectResponses[keyof GetProjectResponses];
32485
+ export type UpdateProjectData = {
32486
+ body: ProjectUpdateParameters;
30412
32487
  path: {
30413
- project_id: string;
30414
- id: string;
30415
- };
30416
- query?: {
30417
- /**
30418
- * Read the version valid at this point in time. Defaults to now. Needs a UTC offset (`2026-03-01T00:00:00Z`); a value without one is a `422`.
30419
- */
30420
- 'as_of[valid]'?: string;
30421
- };
30422
- url: '/api/v1/projects/{project_id}/wage_determinations/{id}';
30423
- };
30424
- export type GetProjectWageDeterminationErrors = {
30425
- /**
30426
- * Forbidden
30427
- */
30428
- 403: Problem;
30429
- /**
30430
- * Not Found
30431
- */
30432
- 404: Problem;
30433
- };
30434
- export type GetProjectWageDeterminationError = GetProjectWageDeterminationErrors[keyof GetProjectWageDeterminationErrors];
30435
- export type GetProjectWageDeterminationResponses = {
30436
- /**
30437
- * Success
30438
- */
30439
- 200: ProjectWageDeterminationResponseObject;
30440
- };
30441
- export type GetProjectWageDeterminationResponse = GetProjectWageDeterminationResponses[keyof GetProjectWageDeterminationResponses];
30442
- export type UpdateProjectWageDeterminationData = {
30443
- body: ProjectWageDeterminationUpdateParameters;
30444
- headers: {
30445
32488
  /**
30446
- * Version validator this write is composed against — the `ETag` from a read of this wage determination, or `*` to write against whatever exists. See "Version validators" in the API overview.
32489
+ * Unique identifier of the project (UUID).
30447
32490
  */
30448
- 'If-Match': string;
30449
- };
30450
- path: {
30451
- project_id: string;
30452
32491
  id: string;
30453
32492
  };
30454
32493
  query?: never;
30455
- url: '/api/v1/projects/{project_id}/wage_determinations/{id}';
32494
+ url: '/api/v1/projects/{id}';
30456
32495
  };
30457
- export type UpdateProjectWageDeterminationErrors = {
32496
+ export type UpdateProjectErrors = {
30458
32497
  /**
30459
32498
  * Bad Request
30460
32499
  */
@@ -30467,69 +32506,23 @@ export type UpdateProjectWageDeterminationErrors = {
30467
32506
  * Not Found
30468
32507
  */
30469
32508
  404: Problem;
30470
- /**
30471
- * Conflict
30472
- */
30473
- 409: Problem;
30474
- /**
30475
- * Precondition Failed
30476
- */
30477
- 412: Problem;
30478
32509
  /**
30479
32510
  * Unprocessable Content
30480
32511
  */
30481
32512
  422: Problem;
30482
- /**
30483
- * Precondition Required
30484
- */
30485
- 428: Problem;
30486
32513
  };
30487
- export type UpdateProjectWageDeterminationError = UpdateProjectWageDeterminationErrors[keyof UpdateProjectWageDeterminationErrors];
30488
- export type UpdateProjectWageDeterminationResponses = {
32514
+ export type UpdateProjectError = UpdateProjectErrors[keyof UpdateProjectErrors];
32515
+ export type UpdateProjectResponses = {
30489
32516
  /**
30490
32517
  * Success
30491
32518
  */
30492
- 200: ProjectWageDeterminationResponseObject;
32519
+ 200: ProjectResponseObject;
30493
32520
  };
30494
- export type UpdateProjectWageDeterminationResponse = UpdateProjectWageDeterminationResponses[keyof UpdateProjectWageDeterminationResponses];
30495
- export type ListProjectsData = {
32521
+ export type UpdateProjectResponse = UpdateProjectResponses[keyof UpdateProjectResponses];
32522
+ export type ListCompanyDetailsData = {
30496
32523
  body?: never;
30497
32524
  path?: never;
30498
32525
  query?: {
30499
- /**
30500
- * Return only projects whose federal PWA mode equals this value (one of all, pw_only, ap_only, none).
30501
- */
30502
- 'filter[federal_pwa_mode]'?: 'all' | 'pw_only' | 'ap_only' | 'none';
30503
- /**
30504
- * Return only projects whose regional PWA mode equals this value (one of all, pw_only, ap_only, none).
30505
- */
30506
- 'filter[regional_pwa_mode]'?: 'all' | 'pw_only' | 'ap_only' | 'none';
30507
- /**
30508
- * Return only projects whose external_id matches this value exactly.
30509
- */
30510
- 'filter[external_id]'?: string;
30511
- /**
30512
- * Fuzzy-matches the project name (trigram word-similarity). Matches the name column only — not external_id.
30513
- */
30514
- 'filter[name]'?: string;
30515
- /**
30516
- * Return only projects whose owned_by_company_id matches this value exactly.
30517
- */
30518
- 'filter[owned_by_company_id]'?: string;
30519
- /**
30520
- * Return only visible projects that have this job.
30521
- */
30522
- 'filter[job_id]'?: string;
30523
- /**
30524
- * Return only visible projects that have this site.
30525
- */
30526
- 'filter[site_id]'?: string;
30527
- 'filter[created_at][gte]'?: string;
30528
- 'filter[created_at][lte]'?: string;
30529
- 'filter[updated_at][gte]'?: string;
30530
- 'filter[updated_at][lte]'?: string;
30531
- filter?: string;
30532
- 'filter[unexpected]'?: string;
30533
32526
  /**
30534
32527
  * This pagination cursor corresponds to the cursor value found in the response in
30535
32528
  * `meta.page.next_cursor`.
@@ -30541,9 +32534,9 @@ export type ListProjectsData = {
30541
32534
  'page[limit]'?: number;
30542
32535
  page?: string;
30543
32536
  };
30544
- url: '/api/v1/projects';
32537
+ url: '/api/v1/pwa/company_details';
30545
32538
  };
30546
- export type ListProjectsErrors = {
32539
+ export type ListCompanyDetailsErrors = {
30547
32540
  /**
30548
32541
  * Bad Request
30549
32542
  */
@@ -30552,34 +32545,56 @@ export type ListProjectsErrors = {
30552
32545
  * Forbidden
30553
32546
  */
30554
32547
  403: Problem;
30555
- /**
30556
- * Unprocessable Content
30557
- */
30558
- 422: Problem;
30559
32548
  };
30560
- export type ListProjectsError = ListProjectsErrors[keyof ListProjectsErrors];
30561
- export type ListProjectsResponses = {
32549
+ export type ListCompanyDetailsError = ListCompanyDetailsErrors[keyof ListCompanyDetailsErrors];
32550
+ export type ListCompanyDetailsResponses = {
30562
32551
  /**
30563
32552
  * Success
30564
32553
  */
30565
32554
  200: {
30566
32555
  meta: Meta;
30567
32556
  links: Links;
30568
- data: Array<ProjectResponseObject>;
32557
+ data: Array<PwaCompanyDetailsResponseObject>;
30569
32558
  };
30570
32559
  };
30571
- export type ListProjectsResponse = ListProjectsResponses[keyof ListProjectsResponses];
30572
- export type CreateProjectData = {
30573
- body: ProjectParameters;
32560
+ export type ListCompanyDetailsResponse = ListCompanyDetailsResponses[keyof ListCompanyDetailsResponses];
32561
+ export type CreateCompanyDetailData = {
32562
+ body: PwaCompanyDetailsParameters;
30574
32563
  path?: never;
30575
32564
  query?: never;
30576
- url: '/api/v1/projects';
32565
+ url: '/api/v1/pwa/company_details';
30577
32566
  };
30578
- export type CreateProjectErrors = {
32567
+ export type CreateCompanyDetailErrors = {
30579
32568
  /**
30580
32569
  * Bad Request
30581
32570
  */
30582
32571
  400: Problem;
32572
+ /**
32573
+ * Forbidden
32574
+ */
32575
+ 403: Problem;
32576
+ /**
32577
+ * Unprocessable Content
32578
+ */
32579
+ 422: Problem;
32580
+ };
32581
+ export type CreateCompanyDetailError = CreateCompanyDetailErrors[keyof CreateCompanyDetailErrors];
32582
+ export type CreateCompanyDetailResponses = {
32583
+ /**
32584
+ * Created
32585
+ */
32586
+ 201: PwaCompanyDetailsResponseObject;
32587
+ };
32588
+ export type CreateCompanyDetailResponse = CreateCompanyDetailResponses[keyof CreateCompanyDetailResponses];
32589
+ export type DeleteCompanyDetailData = {
32590
+ body?: never;
32591
+ path: {
32592
+ id: string;
32593
+ };
32594
+ query?: never;
32595
+ url: '/api/v1/pwa/company_details/{id}';
32596
+ };
32597
+ export type DeleteCompanyDetailErrors = {
30583
32598
  /**
30584
32599
  * Forbidden
30585
32600
  */
@@ -30593,26 +32608,23 @@ export type CreateProjectErrors = {
30593
32608
  */
30594
32609
  422: Problem;
30595
32610
  };
30596
- export type CreateProjectError = CreateProjectErrors[keyof CreateProjectErrors];
30597
- export type CreateProjectResponses = {
32611
+ export type DeleteCompanyDetailError = DeleteCompanyDetailErrors[keyof DeleteCompanyDetailErrors];
32612
+ export type DeleteCompanyDetailResponses = {
30598
32613
  /**
30599
- * Created
32614
+ * No Content
30600
32615
  */
30601
- 201: ProjectResponseObject;
32616
+ 204: void;
30602
32617
  };
30603
- export type CreateProjectResponse = CreateProjectResponses[keyof CreateProjectResponses];
30604
- export type GetProjectData = {
32618
+ export type DeleteCompanyDetailResponse = DeleteCompanyDetailResponses[keyof DeleteCompanyDetailResponses];
32619
+ export type GetCompanyDetailData = {
30605
32620
  body?: never;
30606
32621
  path: {
30607
- /**
30608
- * Unique identifier of the project (UUID).
30609
- */
30610
32622
  id: string;
30611
32623
  };
30612
32624
  query?: never;
30613
- url: '/api/v1/projects/{id}';
32625
+ url: '/api/v1/pwa/company_details/{id}';
30614
32626
  };
30615
- export type GetProjectErrors = {
32627
+ export type GetCompanyDetailErrors = {
30616
32628
  /**
30617
32629
  * Forbidden
30618
32630
  */
@@ -30622,26 +32634,23 @@ export type GetProjectErrors = {
30622
32634
  */
30623
32635
  404: Problem;
30624
32636
  };
30625
- export type GetProjectError = GetProjectErrors[keyof GetProjectErrors];
30626
- export type GetProjectResponses = {
32637
+ export type GetCompanyDetailError = GetCompanyDetailErrors[keyof GetCompanyDetailErrors];
32638
+ export type GetCompanyDetailResponses = {
30627
32639
  /**
30628
32640
  * Success
30629
32641
  */
30630
- 200: ProjectResponseObject;
32642
+ 200: PwaCompanyDetailsResponseObject;
30631
32643
  };
30632
- export type GetProjectResponse = GetProjectResponses[keyof GetProjectResponses];
30633
- export type UpdateProjectData = {
30634
- body: ProjectUpdateParameters;
32644
+ export type GetCompanyDetailResponse = GetCompanyDetailResponses[keyof GetCompanyDetailResponses];
32645
+ export type UpdateCompanyDetailData = {
32646
+ body: PwaCompanyDetailsUpdateParameters;
30635
32647
  path: {
30636
- /**
30637
- * Unique identifier of the project (UUID).
30638
- */
30639
32648
  id: string;
30640
32649
  };
30641
32650
  query?: never;
30642
- url: '/api/v1/projects/{id}';
32651
+ url: '/api/v1/pwa/company_details/{id}';
30643
32652
  };
30644
- export type UpdateProjectErrors = {
32653
+ export type UpdateCompanyDetailErrors = {
30645
32654
  /**
30646
32655
  * Bad Request
30647
32656
  */
@@ -30659,14 +32668,14 @@ export type UpdateProjectErrors = {
30659
32668
  */
30660
32669
  422: Problem;
30661
32670
  };
30662
- export type UpdateProjectError = UpdateProjectErrors[keyof UpdateProjectErrors];
30663
- export type UpdateProjectResponses = {
32671
+ export type UpdateCompanyDetailError = UpdateCompanyDetailErrors[keyof UpdateCompanyDetailErrors];
32672
+ export type UpdateCompanyDetailResponses = {
30664
32673
  /**
30665
32674
  * Success
30666
32675
  */
30667
- 200: ProjectResponseObject;
32676
+ 200: PwaCompanyDetailsResponseObject;
30668
32677
  };
30669
- export type UpdateProjectResponse = UpdateProjectResponses[keyof UpdateProjectResponses];
32678
+ export type UpdateCompanyDetailResponse = UpdateCompanyDetailResponses[keyof UpdateCompanyDetailResponses];
30670
32679
  export type CreateCompanyUserDetailData = {
30671
32680
  body: PwaCompanyUserDetailsParameters;
30672
32681
  path?: never;
@@ -31215,6 +33224,10 @@ export type ListPositionsErrors = {
31215
33224
  * Forbidden
31216
33225
  */
31217
33226
  403: Problem;
33227
+ /**
33228
+ * Not Found
33229
+ */
33230
+ 404: Problem;
31218
33231
  /**
31219
33232
  * Unprocessable Content
31220
33233
  */
@@ -33413,6 +35426,38 @@ export type ListTimeOffRequestsResponses = {
33413
35426
  200: TimeOffRequestsResponseObject;
33414
35427
  };
33415
35428
  export type ListTimeOffRequestsResponse = ListTimeOffRequestsResponses[keyof ListTimeOffRequestsResponses];
35429
+ export type CreateTimeOffRequestData = {
35430
+ body: TimeOffRequestParameters;
35431
+ path?: never;
35432
+ query?: never;
35433
+ url: '/api/v1/timekeeping/time_off_requests';
35434
+ };
35435
+ export type CreateTimeOffRequestErrors = {
35436
+ /**
35437
+ * Bad Request
35438
+ */
35439
+ 400: Problem;
35440
+ /**
35441
+ * Forbidden
35442
+ */
35443
+ 403: Problem;
35444
+ /**
35445
+ * Not Found
35446
+ */
35447
+ 404: Problem;
35448
+ /**
35449
+ * Unprocessable Content
35450
+ */
35451
+ 422: Problem;
35452
+ };
35453
+ export type CreateTimeOffRequestError = CreateTimeOffRequestErrors[keyof CreateTimeOffRequestErrors];
35454
+ export type CreateTimeOffRequestResponses = {
35455
+ /**
35456
+ * Created
35457
+ */
35458
+ 201: TimeOffRequestResponseObject;
35459
+ };
35460
+ export type CreateTimeOffRequestResponse = CreateTimeOffRequestResponses[keyof CreateTimeOffRequestResponses];
33416
35461
  export type GetTimeOffRequestData = {
33417
35462
  body?: never;
33418
35463
  path: {
@@ -33439,6 +35484,40 @@ export type GetTimeOffRequestResponses = {
33439
35484
  200: TimeOffRequestResponseObject;
33440
35485
  };
33441
35486
  export type GetTimeOffRequestResponse = GetTimeOffRequestResponses[keyof GetTimeOffRequestResponses];
35487
+ export type CreateReviewData = {
35488
+ body: TimeOffRequestReviewParameters;
35489
+ path: {
35490
+ time_off_request_id: string;
35491
+ };
35492
+ query?: never;
35493
+ url: '/api/v1/timekeeping/time_off_requests/{time_off_request_id}/reviews';
35494
+ };
35495
+ export type CreateReviewErrors = {
35496
+ /**
35497
+ * Bad Request
35498
+ */
35499
+ 400: Problem;
35500
+ /**
35501
+ * Forbidden
35502
+ */
35503
+ 403: Problem;
35504
+ /**
35505
+ * Not Found
35506
+ */
35507
+ 404: Problem;
35508
+ /**
35509
+ * Unprocessable Content
35510
+ */
35511
+ 422: Problem;
35512
+ };
35513
+ export type CreateReviewError = CreateReviewErrors[keyof CreateReviewErrors];
35514
+ export type CreateReviewResponses = {
35515
+ /**
35516
+ * Created
35517
+ */
35518
+ 201: TimeOffRequestResponseObject;
35519
+ };
35520
+ export type CreateReviewResponse = CreateReviewResponses[keyof CreateReviewResponses];
33442
35521
  export type ListTimeSessionsData = {
33443
35522
  body?: never;
33444
35523
  path?: never;
@@ -33745,6 +35824,10 @@ export type CancelUserCompanyScheduledChangeErrors = {
33745
35824
  * Not Found
33746
35825
  */
33747
35826
  404: Problem;
35827
+ /**
35828
+ * Unprocessable Content
35829
+ */
35830
+ 422: Problem;
33748
35831
  };
33749
35832
  export type CancelUserCompanyScheduledChangeError = CancelUserCompanyScheduledChangeErrors[keyof CancelUserCompanyScheduledChangeErrors];
33750
35833
  export type CancelUserCompanyScheduledChangeResponses = {