@dsptch-work/api-client 0.46.0 → 0.48.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.
- package/CHANGELOG.md +65 -0
- package/dist/gen/index.d.ts +1 -1
- package/dist/gen/sdk.gen.d.ts +165 -24
- package/dist/gen/sdk.gen.js +230 -23
- package/dist/gen/types.gen.d.ts +911 -22
- package/dist/gen/zod.gen.d.ts +749 -54
- package/dist/gen/zod.gen.js +347 -11
- package/package.json +1 -1
package/dist/gen/types.gen.d.ts
CHANGED
|
@@ -219,17 +219,23 @@ export type Problem = {
|
|
|
219
219
|
*
|
|
220
220
|
* The company already has a pay schedule, including one starting in the future or ending in the past. Use the existing schedule instead of creating another.
|
|
221
221
|
*
|
|
222
|
-
* ###
|
|
222
|
+
* ### pay_schedule_deletion_in_progress
|
|
223
223
|
*
|
|
224
|
-
* **
|
|
224
|
+
* **Pay Schedule Deletion In Progress**
|
|
225
225
|
*
|
|
226
|
-
*
|
|
226
|
+
* A reset or deletion is already running for this pay schedule. Wait until it finishes, then retry if the schedule is still present.
|
|
227
|
+
*
|
|
228
|
+
* ### pay_schedule_deletion_refused
|
|
227
229
|
*
|
|
228
|
-
*
|
|
230
|
+
* **Pay Schedule Deletion Refused**
|
|
229
231
|
*
|
|
230
|
-
*
|
|
232
|
+
* This pay schedule cannot be deleted because it holds recorded time, payroll data, approvals, comments, exports, or payroll mappings that must be retained.
|
|
231
233
|
*
|
|
232
|
-
*
|
|
234
|
+
* ### product_archived
|
|
235
|
+
*
|
|
236
|
+
* **Product Archived**
|
|
237
|
+
*
|
|
238
|
+
* The item cannot be unarchived while its product is still archived — an item never lives active inside an archived product. Unarchive the product instead, which restores the item along with the rest of the product's holdings.
|
|
233
239
|
*
|
|
234
240
|
* ### span_beyond_timeline_end
|
|
235
241
|
*
|
|
@@ -412,7 +418,7 @@ export type Problem = {
|
|
|
412
418
|
* Another write to the same resource held it for longer than this request was willing to wait, or collided with it, so nothing was applied. The request itself is fine — resend it unchanged after the `Retry-After` window.
|
|
413
419
|
*
|
|
414
420
|
*/
|
|
415
|
-
export type ProblemTypeCatalog = 'blank_axis' | 'invalid_cursor' | 'invalid_filter_key' | 'invalid_limit' | 'invalid_signature' | 'malformed_body' | 'non_range_filter_value' | 'non_scalar_axis' | 'non_scalar_filter_value' | 'parameter_missing' | 'parameter_not_object' | 'unknown_axis' | 'unknown_key' | 'unsupported_axis' | 'valid_axis_on_timeline' | 'unauthorized' | 'company_scoped_key_required' | 'forbidden' | 'forbidden_key' | 'insufficient_api_key_scope' | 'user_scoped_key_required' | 'not_found' | 'already_subscribed' | 'already_terminated' | 'authorization_revoked' | 'import_in_progress' | 'pay_schedule_already_exists' | '
|
|
421
|
+
export type ProblemTypeCatalog = 'blank_axis' | 'invalid_cursor' | 'invalid_filter_key' | 'invalid_limit' | 'invalid_signature' | 'malformed_body' | 'non_range_filter_value' | 'non_scalar_axis' | 'non_scalar_filter_value' | 'parameter_missing' | 'parameter_not_object' | 'unknown_axis' | 'unknown_key' | 'unsupported_axis' | 'valid_axis_on_timeline' | 'unauthorized' | 'company_scoped_key_required' | 'forbidden' | 'forbidden_key' | 'insufficient_api_key_scope' | 'user_scoped_key_required' | 'not_found' | 'already_subscribed' | 'already_terminated' | 'authorization_revoked' | 'import_in_progress' | 'pay_schedule_already_exists' | 'pay_schedule_deletion_in_progress' | 'pay_schedule_deletion_refused' | 'product_archived' | 'span_beyond_timeline_end' | 'version_overlap' | 'precondition_failed' | 'attachment_not_image' | 'certified_payroll_format_unavailable' | 'company_not_employer' | 'confirm_apprenticeship_conflict' | 'destroy_restricted' | 'interval_too_wide' | 'invalid_date' | 'invalid_filter_value' | 'invalid_iso8601_duration' | 'invalid_placement_move' | 'invalid_signed_id' | 'not_incomplete_permanent_copy' | 'nothing_exportable' | 'nothing_to_cancel' | 'pagination_failed' | 'subtype_foreign_keys' | 'synced_determination' | 'user_not_company_member' | 'validation_failed' | 'wage_schedule_outside_program' | 'precondition_required' | 'too_many_requests' | 'internal_error' | 'database_timeout' | 'write_contended';
|
|
416
422
|
export type ApiKeyScopeResponseObject = {
|
|
417
423
|
resource: string;
|
|
418
424
|
action: 'read' | 'create' | 'update' | 'delete';
|
|
@@ -425,7 +431,7 @@ export type DirectUploadParameters = {
|
|
|
425
431
|
/**
|
|
426
432
|
* 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.
|
|
427
433
|
*/
|
|
428
|
-
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';
|
|
434
|
+
resource: 'assets.items' | 'assets.items.documents' | 'assets.items.service_events' | 'assets.products' | 'assets.products.documents' | 'assets.vendors' | 'compliance.checks' | 'form_submissions' | 'internal.companies' | 'internal.company_todos' | 'internal.job_todos' | 'internal.project_todos' | 'jobs' | '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';
|
|
429
435
|
/**
|
|
430
436
|
* Metadata describing the file being registered, before its bytes are uploaded.
|
|
431
437
|
*/
|
|
@@ -3784,6 +3790,71 @@ export type PayPeriodConfigParameters = {
|
|
|
3784
3790
|
*/
|
|
3785
3791
|
time_card_auto_lock_days?: number | null;
|
|
3786
3792
|
};
|
|
3793
|
+
/**
|
|
3794
|
+
* Schedule a change to an existing pay schedule. effective_date is required; other fields are optional. tz_name, time_mode, and payroll_mode are refused.
|
|
3795
|
+
*/
|
|
3796
|
+
export type PayPeriodConfigUpdateParameters = {
|
|
3797
|
+
/**
|
|
3798
|
+
* Date the submitted attributes take effect (YYYY-MM-DD), at midnight in the schedule's time zone. Its weekday must match start_day_of_week; the API never snaps to another day.
|
|
3799
|
+
*/
|
|
3800
|
+
effective_date: string;
|
|
3801
|
+
/**
|
|
3802
|
+
* Pay frequency: weekly (7 days) or biweekly (14 days).
|
|
3803
|
+
*/
|
|
3804
|
+
frequency?: 'weekly' | 'biweekly';
|
|
3805
|
+
/**
|
|
3806
|
+
* Day the pay period begins, 0 (Sunday) through 6 (Saturday). Must match the effective date's weekday.
|
|
3807
|
+
*/
|
|
3808
|
+
start_day_of_week?: 0 | 1 | 2 | 3 | 4 | 5 | 6;
|
|
3809
|
+
/**
|
|
3810
|
+
* Refused. A pay schedule's time zone cannot be changed after creation.
|
|
3811
|
+
*/
|
|
3812
|
+
tz_name?: string;
|
|
3813
|
+
/**
|
|
3814
|
+
* Time rounding in minutes, 1 or 15.
|
|
3815
|
+
*/
|
|
3816
|
+
rounding_interval?: 1 | 15;
|
|
3817
|
+
/**
|
|
3818
|
+
* Payroll provider; send null to clear.
|
|
3819
|
+
*/
|
|
3820
|
+
payroll_system?: 'rippling' | 'quickbooks_online' | 'paychex' | 'gusto' | null;
|
|
3821
|
+
/**
|
|
3822
|
+
* Move pay dates after banking holidays rather than before.
|
|
3823
|
+
*/
|
|
3824
|
+
paid_after_holiday?: boolean;
|
|
3825
|
+
/**
|
|
3826
|
+
* Whole days from the pay period's end to payday; must cover both deadline intervals.
|
|
3827
|
+
*/
|
|
3828
|
+
arrear_days?: number;
|
|
3829
|
+
/**
|
|
3830
|
+
* Calendar-day lead for the pay-run deadline. Send together with pay_run_deadline_clock_time.
|
|
3831
|
+
*/
|
|
3832
|
+
pay_run_deadline_days?: number;
|
|
3833
|
+
/**
|
|
3834
|
+
* Pay-run deadline's local clock time (HH:MM). Send together with pay_run_deadline_days.
|
|
3835
|
+
*/
|
|
3836
|
+
pay_run_deadline_clock_time?: string;
|
|
3837
|
+
/**
|
|
3838
|
+
* Whole calendar days before the pay-run deadline's date when approvals are due. Send together with approvals_deadline_clock_time.
|
|
3839
|
+
*/
|
|
3840
|
+
approvals_deadline_days?: number;
|
|
3841
|
+
/**
|
|
3842
|
+
* Approvals deadline's local clock time (HH:MM). Send together with approvals_deadline_days.
|
|
3843
|
+
*/
|
|
3844
|
+
approvals_deadline_clock_time?: string;
|
|
3845
|
+
/**
|
|
3846
|
+
* Signed days from the pay-run deadline until time cards lock; negative values lock earlier, 0 locks at the deadline, null disables locking.
|
|
3847
|
+
*/
|
|
3848
|
+
time_card_auto_lock_days?: number | null;
|
|
3849
|
+
/**
|
|
3850
|
+
* Refused. Delete the pay schedule and create it again to change time_mode.
|
|
3851
|
+
*/
|
|
3852
|
+
time_mode?: 'none' | 'base' | 'aggregate';
|
|
3853
|
+
/**
|
|
3854
|
+
* Refused. Delete the pay schedule and create it again to change payroll_mode.
|
|
3855
|
+
*/
|
|
3856
|
+
payroll_mode?: 'none' | 'base' | 'aggregate' | null;
|
|
3857
|
+
};
|
|
3787
3858
|
/**
|
|
3788
3859
|
* A pay schedule (PayPeriodConfig) — the top-level timekeeping unit that sets a company's payroll cadence and tracking modes and generates its stream of pay periods. Reads return the version valid at the requested time; create returns the new schedule, keyed by its stable id.
|
|
3789
3860
|
*/
|
|
@@ -4921,6 +4992,10 @@ export type JobResponseObject = {
|
|
|
4921
4992
|
* Whether time entries on this job are capped at one feature allocation.
|
|
4922
4993
|
*/
|
|
4923
4994
|
max_one_feature_allocation: boolean;
|
|
4995
|
+
/**
|
|
4996
|
+
* Contract work classification; unspecified until confirmed. Does not change rate syncing.
|
|
4997
|
+
*/
|
|
4998
|
+
work_classification: 'unspecified' | 'construction' | 'long_term_service' | 'one_time_service';
|
|
4924
4999
|
/**
|
|
4925
5000
|
* How this job records production completions: one of none (opts out), feature (per site feature, e.g. a turbine), or quantity (a unit count, e.g. modules). Locked once any completion exists.
|
|
4926
5001
|
*/
|
|
@@ -4934,6 +5009,10 @@ export type JobResponseObject = {
|
|
|
4934
5009
|
* Prevailing-wage / apprenticeship (PWA) compliance details for a job, used in certified-payroll reporting. Common fields are always present when this object exists; regional fields appear only when applicable to the job's region and regional PWA mode. The property is null when no PWA details have been configured; PWA tracking modes alone do not materialize it.
|
|
4935
5010
|
*/
|
|
4936
5011
|
export type PwaJobDetailsResponseObject = {
|
|
5012
|
+
/**
|
|
5013
|
+
* Job contract execution date override. Null means use the project's contract date.
|
|
5014
|
+
*/
|
|
5015
|
+
lock_in_date: string | null;
|
|
4937
5016
|
/**
|
|
4938
5017
|
* Role of the company on this job for PWA reporting: one of prime_contractor or sub_contractor; null when unset.
|
|
4939
5018
|
*/
|
|
@@ -4998,6 +5077,35 @@ export type PwaJobDetailsResponseObject = {
|
|
|
4998
5077
|
* New York DOL prevailing-rate-case (PRC) number, a 10-digit identifier; present only for a compatible New York prevailing-wage configuration and null when applicable but unset.
|
|
4999
5078
|
*/
|
|
5000
5079
|
ny_dol_prc_number?: string | null;
|
|
5080
|
+
/**
|
|
5081
|
+
* Job override, otherwise its project's contract date. Null when neither has a date.
|
|
5082
|
+
*/
|
|
5083
|
+
readonly effective_lock_in_date: string | null;
|
|
5084
|
+
/**
|
|
5085
|
+
* Contract date evidence attached to these PWA details. Null when no evidence is attached.
|
|
5086
|
+
*/
|
|
5087
|
+
readonly lock_in_date_doc: {
|
|
5088
|
+
/**
|
|
5089
|
+
* ID of the versioned evidence document.
|
|
5090
|
+
*/
|
|
5091
|
+
id: string;
|
|
5092
|
+
/**
|
|
5093
|
+
* Original filename of the evidence.
|
|
5094
|
+
*/
|
|
5095
|
+
filename: string;
|
|
5096
|
+
/**
|
|
5097
|
+
* MIME type of the evidence file.
|
|
5098
|
+
*/
|
|
5099
|
+
content_type: string;
|
|
5100
|
+
/**
|
|
5101
|
+
* Evidence file size in bytes.
|
|
5102
|
+
*/
|
|
5103
|
+
byte_size: number;
|
|
5104
|
+
/**
|
|
5105
|
+
* A URL to download the file.
|
|
5106
|
+
*/
|
|
5107
|
+
url: string;
|
|
5108
|
+
} | null;
|
|
5001
5109
|
} | null;
|
|
5002
5110
|
/**
|
|
5003
5111
|
* Parameters for creating a job. Sets the job's schedule, work types, address, custom-field values, and optional Prevailing Wage / Apprenticeship (PWA) compliance. `requested_by_company_id` and `created_by_user_id` are required unless `template_id` names a template, whose copy keeps both. 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 job or relationship is saved.
|
|
@@ -5011,6 +5119,14 @@ export type JobCreateParameters = {
|
|
|
5011
5119
|
* ID of a job template to copy this job from; when set, the new job is created from that template. Null or omit to start from a blank job; a blank ID or a wrong type answers 422.
|
|
5012
5120
|
*/
|
|
5013
5121
|
template_id?: string | null;
|
|
5122
|
+
/**
|
|
5123
|
+
* Evidence signed ID uploaded for resource jobs. Omit to retain the file. Requires performed_by_user_id; null is refused.
|
|
5124
|
+
*/
|
|
5125
|
+
lock_in_date_doc_signed_id?: string;
|
|
5126
|
+
/**
|
|
5127
|
+
* Visible user filing contract evidence. Required when lock_in_date_doc_signed_id is supplied.
|
|
5128
|
+
*/
|
|
5129
|
+
performed_by_user_id?: string;
|
|
5014
5130
|
/**
|
|
5015
5131
|
* Human-readable job name, unique within the creating company; null when unset.
|
|
5016
5132
|
*/
|
|
@@ -5091,6 +5207,10 @@ export type JobCreateParameters = {
|
|
|
5091
5207
|
* How this job records production completions: one of none (opts out), feature (per site feature, e.g. a turbine), or quantity (a unit count, e.g. modules). Locked once any completion exists. Omit the field to leave the current value unchanged.
|
|
5092
5208
|
*/
|
|
5093
5209
|
production_tracking_kind?: 'none' | 'feature' | 'quantity';
|
|
5210
|
+
/**
|
|
5211
|
+
* Contract work classification. Defaults to unspecified; construction, long_term_service, and one_time_service identify the confirmed kind.
|
|
5212
|
+
*/
|
|
5213
|
+
work_classification?: 'unspecified' | 'construction' | 'long_term_service' | 'one_time_service';
|
|
5094
5214
|
/**
|
|
5095
5215
|
* 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 job or relationship is saved.
|
|
5096
5216
|
*/
|
|
@@ -5182,6 +5302,10 @@ export type JobCreateParameters = {
|
|
|
5182
5302
|
* Prevailing-wage / apprenticeship (PWA) compliance details to set on the job. Omit or send an empty object to make no PWA-details changes. Null or a non-object answers 422, and so does an unknown key or a wrongly typed field inside it, at its pointer. The accepted regional keys depend on the effective region and regional PWA mode.
|
|
5183
5303
|
*/
|
|
5184
5304
|
pwa_details?: {
|
|
5305
|
+
/**
|
|
5306
|
+
* Job contract execution date override. Null clears the override and uses the project's contract date.
|
|
5307
|
+
*/
|
|
5308
|
+
lock_in_date?: string | null;
|
|
5185
5309
|
/**
|
|
5186
5310
|
* Role of the company on this job for PWA reporting: one of prime_contractor or sub_contractor; null when unset.
|
|
5187
5311
|
*/
|
|
@@ -5252,6 +5376,14 @@ export type JobCreateParameters = {
|
|
|
5252
5376
|
* Parameters for updating an existing job. Every field is optional; omit a field to preserve its current value. The resulting job must still satisfy schedule and PWA validation rules. Accepts every shared job field plus a directly settable status and custom-field changes. Sending `created_by_user_id` returns 400 unknown_key, including when it matches the existing creator or is null. 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 job or relationship changes.
|
|
5253
5377
|
*/
|
|
5254
5378
|
export type JobUpdateParameters = {
|
|
5379
|
+
/**
|
|
5380
|
+
* Evidence signed ID uploaded for resource jobs. Omit to retain the file. Requires performed_by_user_id; null is refused.
|
|
5381
|
+
*/
|
|
5382
|
+
lock_in_date_doc_signed_id?: string;
|
|
5383
|
+
/**
|
|
5384
|
+
* Visible user filing contract evidence. Required when lock_in_date_doc_signed_id is supplied.
|
|
5385
|
+
*/
|
|
5386
|
+
performed_by_user_id?: string;
|
|
5255
5387
|
/**
|
|
5256
5388
|
* Human-readable job name, unique within the creating company; null when unset.
|
|
5257
5389
|
*/
|
|
@@ -5332,6 +5464,10 @@ export type JobUpdateParameters = {
|
|
|
5332
5464
|
* How this job records production completions: one of none (opts out), feature (per site feature, e.g. a turbine), or quantity (a unit count, e.g. modules). Locked once any completion exists. Omit the field to leave the current value unchanged.
|
|
5333
5465
|
*/
|
|
5334
5466
|
production_tracking_kind?: 'none' | 'feature' | 'quantity';
|
|
5467
|
+
/**
|
|
5468
|
+
* Contract work classification. Defaults to unspecified; construction, long_term_service, and one_time_service identify the confirmed kind.
|
|
5469
|
+
*/
|
|
5470
|
+
work_classification?: 'unspecified' | 'construction' | 'long_term_service' | 'one_time_service';
|
|
5335
5471
|
/**
|
|
5336
5472
|
* 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 job or relationship is saved.
|
|
5337
5473
|
*/
|
|
@@ -5423,6 +5559,10 @@ export type JobUpdateParameters = {
|
|
|
5423
5559
|
* Prevailing-wage / apprenticeship (PWA) compliance details to set on the job. Omit or send an empty object to make no PWA-details changes. Null or a non-object answers 422, and so does an unknown key or a wrongly typed field inside it, at its pointer. The accepted regional keys depend on the effective region and regional PWA mode.
|
|
5424
5560
|
*/
|
|
5425
5561
|
pwa_details?: {
|
|
5562
|
+
/**
|
|
5563
|
+
* Job contract execution date override. Null clears the override and uses the project's contract date.
|
|
5564
|
+
*/
|
|
5565
|
+
lock_in_date?: string | null;
|
|
5426
5566
|
/**
|
|
5427
5567
|
* Role of the company on this job for PWA reporting: one of prime_contractor or sub_contractor; null when unset.
|
|
5428
5568
|
*/
|
|
@@ -12109,7 +12249,7 @@ export type ProductionJobScopePriceResponseObject = {
|
|
|
12109
12249
|
*/
|
|
12110
12250
|
unit_of_measure: string;
|
|
12111
12251
|
/**
|
|
12112
|
-
* Billing rate per unit in cents, as a decimal string (e.g. "120000.0" is $1,200.00 and "3.5" is $0.035); a fraction of a cent is kept exactly. Null means the current price is unknown; "0.0" is a known zero price. Present for company keys and for administrators, managers, safety managers
|
|
12252
|
+
* Billing rate per unit in cents, as a decimal string (e.g. "120000.0" is $1,200.00 and "3.5" is $0.035); a fraction of a cent is kept exactly. Null means the current price is unknown; "0.0" is a known zero price. Present for company keys and for administrators, managers, and safety managers of the company that owns the job; omitted for other user keys, including field leads.
|
|
12113
12253
|
*/
|
|
12114
12254
|
unit_price_cents?: string | null;
|
|
12115
12255
|
/**
|
|
@@ -13174,21 +13314,88 @@ export type LaborRateResponseObject = {
|
|
|
13174
13314
|
*/
|
|
13175
13315
|
wage_pay_base_rate_cents: string;
|
|
13176
13316
|
/**
|
|
13177
|
-
* Hourly
|
|
13317
|
+
* Hourly amount printed in the rate cell, in cents as a decimal string (e.g. "1200.0" is $12.00); null when absent. This source component may coexist with other benefits. Use fringe_calculation to determine whether a complete hourly projection is available.
|
|
13178
13318
|
*/
|
|
13179
13319
|
fringe_rate_cents: string | null;
|
|
13180
13320
|
/**
|
|
13181
|
-
*
|
|
13321
|
+
* Percentage printed in the fringe cell as a decimal string (e.g. "15.00" is 15%); null when absent. It may coexist with an hourly component and requires evaluation before automatic calculation.
|
|
13182
13322
|
*/
|
|
13183
13323
|
fringe_percentage_rate: string | null;
|
|
13184
13324
|
/**
|
|
13185
|
-
*
|
|
13325
|
+
* Weekly amount printed in the rate cell, in cents as a decimal string; null when absent. Additional prose benefits appear in fringe_benefit_components.
|
|
13186
13326
|
*/
|
|
13187
13327
|
fringe_benefit_weekly_rate_cents: string | null;
|
|
13188
13328
|
/**
|
|
13189
|
-
*
|
|
13329
|
+
* Monthly amount printed in the rate cell, in cents as a decimal string; null when absent. Additional prose benefits appear in fringe_benefit_components.
|
|
13190
13330
|
*/
|
|
13191
13331
|
fringe_benefit_monthly_rate_cents: string | null;
|
|
13332
|
+
fringe_calculation: {
|
|
13333
|
+
/**
|
|
13334
|
+
* Whether all stated fringe benefits have a supported complete hourly projection.
|
|
13335
|
+
*/
|
|
13336
|
+
available: boolean;
|
|
13337
|
+
/**
|
|
13338
|
+
* Complete hourly fringe in decimal cents, or null when calculation is unavailable. Never substitute a partial hourly amount or zero for null.
|
|
13339
|
+
*/
|
|
13340
|
+
hourly_cents: string | null;
|
|
13341
|
+
/**
|
|
13342
|
+
* Machine-readable reasons preventing automatic calculation.
|
|
13343
|
+
*/
|
|
13344
|
+
reasons: Array<string>;
|
|
13345
|
+
/**
|
|
13346
|
+
* Source evidence considered when determining calculation readiness for this classification.
|
|
13347
|
+
*/
|
|
13348
|
+
component_ids: Array<string>;
|
|
13349
|
+
};
|
|
13350
|
+
/**
|
|
13351
|
+
* Monetary source occurrences attached to this rate, plus unresolved occurrences from its schedule, preserved individually without adding repeated or conflicting amounts. Each occurrence states its attachment status.
|
|
13352
|
+
*/
|
|
13353
|
+
fringe_benefit_components: Array<{
|
|
13354
|
+
/**
|
|
13355
|
+
* Identifier of this captured source occurrence.
|
|
13356
|
+
*/
|
|
13357
|
+
id: string;
|
|
13358
|
+
/**
|
|
13359
|
+
* Zero-based printed order within the schedule.
|
|
13360
|
+
*/
|
|
13361
|
+
position: number;
|
|
13362
|
+
/**
|
|
13363
|
+
* Exact stated monetary amount as decimal cents; not an hourly conversion.
|
|
13364
|
+
*/
|
|
13365
|
+
amount_cents: string;
|
|
13366
|
+
/**
|
|
13367
|
+
* Period printed with the monetary amount.
|
|
13368
|
+
*/
|
|
13369
|
+
period: 'hour' | 'day' | 'week' | 'month' | 'year' | 'shift';
|
|
13370
|
+
/**
|
|
13371
|
+
* Whether the clause describes a fringe contribution, a wage premium, or an unresolved monetary term.
|
|
13372
|
+
*/
|
|
13373
|
+
kind: 'fringe' | 'wage_premium' | 'unresolved';
|
|
13374
|
+
/**
|
|
13375
|
+
* Verbatim surrounding source paragraph, including stated qualifications.
|
|
13376
|
+
*/
|
|
13377
|
+
text: string;
|
|
13378
|
+
/**
|
|
13379
|
+
* Rate means the source establishes the attached classification; unresolved means applicability has not been established and must not be assumed schedule-wide.
|
|
13380
|
+
*/
|
|
13381
|
+
attachment_status: 'rate' | 'unresolved';
|
|
13382
|
+
/**
|
|
13383
|
+
* Attached labor rate identifier, or null when applicability is unresolved.
|
|
13384
|
+
*/
|
|
13385
|
+
labor_rate_id: string | null;
|
|
13386
|
+
/**
|
|
13387
|
+
* SHA256 of the normalized source document addressed by the character offsets.
|
|
13388
|
+
*/
|
|
13389
|
+
source_sha256: string;
|
|
13390
|
+
/**
|
|
13391
|
+
* Inclusive character offset of the monetary occurrence within the normalized source document.
|
|
13392
|
+
*/
|
|
13393
|
+
start_offset: number;
|
|
13394
|
+
/**
|
|
13395
|
+
* Exclusive character offset of the monetary occurrence within the normalized source document.
|
|
13396
|
+
*/
|
|
13397
|
+
end_offset: number;
|
|
13398
|
+
}>;
|
|
13192
13399
|
/**
|
|
13193
13400
|
* IDs of the reference items this rate cites, in the order their letter tokens appear in the source fringe expression.
|
|
13194
13401
|
*/
|
|
@@ -15766,11 +15973,73 @@ export type AssetsDocumentResponseObject = {
|
|
|
15766
15973
|
updated_at: string;
|
|
15767
15974
|
};
|
|
15768
15975
|
/**
|
|
15769
|
-
*
|
|
15976
|
+
* A file attached to an asset product — a document such as a manual, warranty, or certificate. Uploaded through the direct-upload flow and optionally marked as a certified copy.
|
|
15977
|
+
*/
|
|
15978
|
+
export type AssetsProductDocumentResponseObject = {
|
|
15979
|
+
/**
|
|
15980
|
+
* Unique identifier.
|
|
15981
|
+
*/
|
|
15982
|
+
id: string;
|
|
15983
|
+
/**
|
|
15984
|
+
* ID of the asset product this document belongs to.
|
|
15985
|
+
*/
|
|
15986
|
+
assets_product_id: string;
|
|
15987
|
+
/**
|
|
15988
|
+
* Read-only document label; this API does not set it, so it is always "document".
|
|
15989
|
+
*/
|
|
15990
|
+
name: string;
|
|
15991
|
+
/**
|
|
15992
|
+
* The file's human-readable download name; null when not set.
|
|
15993
|
+
*/
|
|
15994
|
+
filename: string | null;
|
|
15995
|
+
/**
|
|
15996
|
+
* Free-text description of the document; null when none.
|
|
15997
|
+
*/
|
|
15998
|
+
description: string | null;
|
|
15999
|
+
/**
|
|
16000
|
+
* Whether the document has been marked as a certified copy.
|
|
16001
|
+
*/
|
|
16002
|
+
certified: boolean;
|
|
16003
|
+
/**
|
|
16004
|
+
* ID of the user who uploaded the document.
|
|
16005
|
+
*/
|
|
16006
|
+
created_by_user_id: string;
|
|
16007
|
+
/**
|
|
16008
|
+
* The attached file; null while no blob is attached.
|
|
16009
|
+
*/
|
|
16010
|
+
file: {
|
|
16011
|
+
/**
|
|
16012
|
+
* Stored name of the uploaded file.
|
|
16013
|
+
*/
|
|
16014
|
+
filename: string;
|
|
16015
|
+
/**
|
|
16016
|
+
* MIME type of the file; null when not recorded.
|
|
16017
|
+
*/
|
|
16018
|
+
content_type: string | null;
|
|
16019
|
+
/**
|
|
16020
|
+
* Size of the file in bytes.
|
|
16021
|
+
*/
|
|
16022
|
+
byte_size: number;
|
|
16023
|
+
/**
|
|
16024
|
+
* A URL to download the file.
|
|
16025
|
+
*/
|
|
16026
|
+
url: string;
|
|
16027
|
+
} | null;
|
|
16028
|
+
/**
|
|
16029
|
+
* When the record was created (ISO 8601).
|
|
16030
|
+
*/
|
|
16031
|
+
created_at: string;
|
|
16032
|
+
/**
|
|
16033
|
+
* When the record was last updated (ISO 8601).
|
|
16034
|
+
*/
|
|
16035
|
+
updated_at: string;
|
|
16036
|
+
};
|
|
16037
|
+
/**
|
|
16038
|
+
* Attach a file to an asset item or product as a document. file is required and takes a signed_id from the direct-upload endpoint.
|
|
15770
16039
|
*/
|
|
15771
16040
|
export type AssetsDocumentParameters = {
|
|
15772
16041
|
/**
|
|
15773
|
-
* A signed_id from POST /api/v1/direct_uploads identifying the uploaded blob to attach. Register the upload naming `assets.items.documents` — a signed_id issued for any other resource will not resolve here. Null and a blank string answer 422.
|
|
16042
|
+
* A signed_id from POST /api/v1/direct_uploads identifying the uploaded blob to attach. Register the upload naming this endpoint's resource (`assets.items.documents` or `assets.products.documents`) — a signed_id issued for any other resource will not resolve here. Null and a blank string answer 422.
|
|
15774
16043
|
*/
|
|
15775
16044
|
file: string;
|
|
15776
16045
|
/**
|
|
@@ -15787,11 +16056,11 @@ export type AssetsDocumentParameters = {
|
|
|
15787
16056
|
performed_by_user_id: string;
|
|
15788
16057
|
};
|
|
15789
16058
|
/**
|
|
15790
|
-
* Update an asset
|
|
16059
|
+
* Update an asset item or product document. All fields are optional — send only what changes. Omit file to retain the existing attachment, or supply a new signed_id to replace it. A document always holds a file, so null answers 422, as does a blank string.
|
|
15791
16060
|
*/
|
|
15792
16061
|
export type AssetsDocumentUpdateParameters = {
|
|
15793
16062
|
/**
|
|
15794
|
-
* A signed_id from POST /api/v1/direct_uploads identifying a replacement blob. Register the upload naming `assets.items.documents` — a signed_id issued for any other resource will not resolve here.
|
|
16063
|
+
* A signed_id from POST /api/v1/direct_uploads identifying a replacement blob. Register the upload naming this endpoint's resource (`assets.items.documents` or `assets.products.documents`) — a signed_id issued for any other resource will not resolve here.
|
|
15795
16064
|
*/
|
|
15796
16065
|
file?: string;
|
|
15797
16066
|
/**
|
|
@@ -15804,7 +16073,7 @@ export type AssetsDocumentUpdateParameters = {
|
|
|
15804
16073
|
description?: string | null;
|
|
15805
16074
|
};
|
|
15806
16075
|
/**
|
|
15807
|
-
* One entry in an
|
|
16076
|
+
* One entry in an asset document's change history, recorded whenever the document is created, updated, or deleted — including when only its attached file is replaced.
|
|
15808
16077
|
*/
|
|
15809
16078
|
export type AssetsDocumentVersionResponseObject = {
|
|
15810
16079
|
/**
|
|
@@ -16889,6 +17158,287 @@ export type CompetencyStandardArchiveParametersWritable = {
|
|
|
16889
17158
|
export type CompetencyAssessorAuthorizationRevocationParametersWritable = {
|
|
16890
17159
|
[key: string]: never;
|
|
16891
17160
|
};
|
|
17161
|
+
/**
|
|
17162
|
+
* A job — the primary unit of work in DSPTCH. Workers fill its positions and track time against it; it optionally tracks Prevailing Wage / Apprenticeship (PWA) compliance and optionally belongs to a project. There is no delete endpoint — cancel or complete a job through its status instead.
|
|
17163
|
+
*/
|
|
17164
|
+
export type JobResponseObjectWritable = {
|
|
17165
|
+
/**
|
|
17166
|
+
* Unique identifier.
|
|
17167
|
+
*/
|
|
17168
|
+
id: string;
|
|
17169
|
+
/**
|
|
17170
|
+
* User-facing sequential job number shown in the app, preserved from the job's original integer identifier.
|
|
17171
|
+
*/
|
|
17172
|
+
display_id: number;
|
|
17173
|
+
/**
|
|
17174
|
+
* Free-text description of the job.
|
|
17175
|
+
*/
|
|
17176
|
+
description: string;
|
|
17177
|
+
/**
|
|
17178
|
+
* The job's scheduled time window as a timestamp range; null when unscheduled. start_time and end_time name the days it spans in tz_name.
|
|
17179
|
+
*/
|
|
17180
|
+
scheduled_time: string | null;
|
|
17181
|
+
/**
|
|
17182
|
+
* When the record was created (ISO 8601).
|
|
17183
|
+
*/
|
|
17184
|
+
created_at: string;
|
|
17185
|
+
/**
|
|
17186
|
+
* When the record was last updated (ISO 8601).
|
|
17187
|
+
*/
|
|
17188
|
+
updated_at: string;
|
|
17189
|
+
/**
|
|
17190
|
+
* Current lifecycle status: one of pending_provider, pending_schedule, pending_workers, ready, disputed, completed, or cancelled. Mostly derived from job and position state; only completed, cancelled, and disputed can be set directly.
|
|
17191
|
+
*/
|
|
17192
|
+
status: string;
|
|
17193
|
+
/**
|
|
17194
|
+
* The job's first day, as a calendar date (`YYYY-MM-DD`) in tz_name; the schedule starts at the start of that day there, the same as the web. Null when unscheduled.
|
|
17195
|
+
*/
|
|
17196
|
+
start_time: string | null;
|
|
17197
|
+
/**
|
|
17198
|
+
* The job's last day, as a calendar date (`YYYY-MM-DD`) in tz_name; the schedule ends at the end of that day there, the same as the web. Null when unscheduled.
|
|
17199
|
+
*/
|
|
17200
|
+
end_time: string | null;
|
|
17201
|
+
/**
|
|
17202
|
+
* 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.
|
|
17203
|
+
*/
|
|
17204
|
+
purchase_order_number: string | null;
|
|
17205
|
+
time_card_start_day: TimeCardStartDay;
|
|
17206
|
+
/**
|
|
17207
|
+
* Time zone the job's schedule and time tracking are anchored to (e.g. US/Central).
|
|
17208
|
+
*/
|
|
17209
|
+
tz_name: string;
|
|
17210
|
+
/**
|
|
17211
|
+
* Compatibility alias — true when clock_in_requirement is warning or required; always boolean.
|
|
17212
|
+
*/
|
|
17213
|
+
require_clock_in: boolean;
|
|
17214
|
+
/**
|
|
17215
|
+
* Clock-in enforcement level stored on the job: one of none (no guidance), warning (manual time entries fail the clock-in compliance check), or required (a technician's own time on the job must come from clocking in on DSPTCH Mobile; the technician's own web and user-API-key time-entry writes are refused). A time entry whose time code, as of the entry's start time, is PTO, holiday, or restricted to non-job time entries is exempt at every level. Time-entry writes made with a company API key are not gated. A company-wide clock-in requirement on the time entry's company can make that entry's requirement stricter than this value.
|
|
17216
|
+
*/
|
|
17217
|
+
clock_in_requirement: 'none' | 'warning' | 'required';
|
|
17218
|
+
/**
|
|
17219
|
+
* Human-readable job name, unique within the creating company; null when unset.
|
|
17220
|
+
*/
|
|
17221
|
+
name: string | null;
|
|
17222
|
+
/**
|
|
17223
|
+
* Federal prevailing-wage / apprenticeship (PWA) tracking mode: one of all (both prevailing wage and apprenticeship), pw_only, ap_only, or none.
|
|
17224
|
+
*/
|
|
17225
|
+
federal_pwa_mode: 'all' | 'pw_only' | 'ap_only' | 'none';
|
|
17226
|
+
/**
|
|
17227
|
+
* Regional (state) prevailing-wage / apprenticeship tracking mode: one of all (both prevailing wage and apprenticeship), pw_only, ap_only, or none.
|
|
17228
|
+
*/
|
|
17229
|
+
regional_pwa_mode: 'all' | 'pw_only' | 'ap_only' | 'none';
|
|
17230
|
+
/**
|
|
17231
|
+
* Two-letter US state abbreviation for the job's operating region (e.g. CA); required when the job tracks regional prevailing wage, otherwise null.
|
|
17232
|
+
*/
|
|
17233
|
+
region: string | null;
|
|
17234
|
+
/**
|
|
17235
|
+
* Whether to send geofence-based clock-in/out reminders for this job; null when unset.
|
|
17236
|
+
*/
|
|
17237
|
+
send_geofence_reminders: boolean | null;
|
|
17238
|
+
/**
|
|
17239
|
+
* Whether customers granted access can view this job.
|
|
17240
|
+
*/
|
|
17241
|
+
allow_customer_access: boolean;
|
|
17242
|
+
/**
|
|
17243
|
+
* ID of the company that created the job.
|
|
17244
|
+
*/
|
|
17245
|
+
created_by_company_id: string;
|
|
17246
|
+
/**
|
|
17247
|
+
* ID of the company that requested the job (for example a general contractor); null when unset.
|
|
17248
|
+
*/
|
|
17249
|
+
requested_by_company_id: string | null;
|
|
17250
|
+
/**
|
|
17251
|
+
* ID of the project this job belongs to; null when the job is not part of a project.
|
|
17252
|
+
*/
|
|
17253
|
+
project_id: string | null;
|
|
17254
|
+
/**
|
|
17255
|
+
* ID of the provider company's department assigned to this job; null when unassigned. Retrieve department IDs from GET /api/v1/companies/departments.
|
|
17256
|
+
*/
|
|
17257
|
+
companies_department_id: string | null;
|
|
17258
|
+
/**
|
|
17259
|
+
* The job's managers, each as a minimal object; empty when the job has no managers.
|
|
17260
|
+
*/
|
|
17261
|
+
manager_users: Array<{
|
|
17262
|
+
/**
|
|
17263
|
+
* ID of the manager user.
|
|
17264
|
+
*/
|
|
17265
|
+
id: string;
|
|
17266
|
+
/**
|
|
17267
|
+
* Name of the manager user.
|
|
17268
|
+
*/
|
|
17269
|
+
name: string;
|
|
17270
|
+
}>;
|
|
17271
|
+
/**
|
|
17272
|
+
* The user who created the job.
|
|
17273
|
+
*/
|
|
17274
|
+
created_by_user: {
|
|
17275
|
+
/**
|
|
17276
|
+
* ID of the creating user.
|
|
17277
|
+
*/
|
|
17278
|
+
id: string;
|
|
17279
|
+
/**
|
|
17280
|
+
* Name of the creating user.
|
|
17281
|
+
*/
|
|
17282
|
+
name: string;
|
|
17283
|
+
};
|
|
17284
|
+
/**
|
|
17285
|
+
* Sites (geofenced locations) associated with the job; empty when none.
|
|
17286
|
+
*/
|
|
17287
|
+
sites: Array<{
|
|
17288
|
+
/**
|
|
17289
|
+
* Name of the site.
|
|
17290
|
+
*/
|
|
17291
|
+
name: string;
|
|
17292
|
+
/**
|
|
17293
|
+
* Geofenced features within the site; empty when none.
|
|
17294
|
+
*/
|
|
17295
|
+
features: Array<{
|
|
17296
|
+
/**
|
|
17297
|
+
* Name of the feature.
|
|
17298
|
+
*/
|
|
17299
|
+
name: string;
|
|
17300
|
+
}>;
|
|
17301
|
+
}>;
|
|
17302
|
+
/**
|
|
17303
|
+
* The job's structured address; null when unset.
|
|
17304
|
+
*/
|
|
17305
|
+
job_address: {
|
|
17306
|
+
/**
|
|
17307
|
+
* Human-readable one-line address label.
|
|
17308
|
+
*/
|
|
17309
|
+
label: string;
|
|
17310
|
+
} | null;
|
|
17311
|
+
/**
|
|
17312
|
+
* Positions on the job — the worker assignments that track time against it; empty when none.
|
|
17313
|
+
*/
|
|
17314
|
+
positions: Array<{
|
|
17315
|
+
position_function: PositionFunction;
|
|
17316
|
+
/**
|
|
17317
|
+
* ID of the worker assigned to the position; null when unfilled.
|
|
17318
|
+
*/
|
|
17319
|
+
fulfilled_by_user_id: string | null;
|
|
17320
|
+
}>;
|
|
17321
|
+
/**
|
|
17322
|
+
* The project this job belongs to; null when none.
|
|
17323
|
+
*/
|
|
17324
|
+
project: {
|
|
17325
|
+
/**
|
|
17326
|
+
* Name of the project.
|
|
17327
|
+
*/
|
|
17328
|
+
name: string;
|
|
17329
|
+
} | null;
|
|
17330
|
+
pwa_details: PwaJobDetailsResponseObjectWritable;
|
|
17331
|
+
/**
|
|
17332
|
+
* Work types (trade or scope categories) associated with the job; empty when none.
|
|
17333
|
+
*/
|
|
17334
|
+
work_types: Array<{
|
|
17335
|
+
/**
|
|
17336
|
+
* The work-type name.
|
|
17337
|
+
*/
|
|
17338
|
+
value: string;
|
|
17339
|
+
}>;
|
|
17340
|
+
/**
|
|
17341
|
+
* IDs of the timecodes currently associated with the job; empty when none.
|
|
17342
|
+
*/
|
|
17343
|
+
timekeeping_timecode_ids: Array<string>;
|
|
17344
|
+
/**
|
|
17345
|
+
* Whether the feature-allocation selector is shown for this job.
|
|
17346
|
+
*/
|
|
17347
|
+
tracks_feature_allocations: boolean;
|
|
17348
|
+
/**
|
|
17349
|
+
* Whether applicable time entries on this job must carry a feature allocation.
|
|
17350
|
+
*/
|
|
17351
|
+
requires_feature_allocation: boolean;
|
|
17352
|
+
/**
|
|
17353
|
+
* Whether time entries on this job are capped at one feature allocation.
|
|
17354
|
+
*/
|
|
17355
|
+
max_one_feature_allocation: boolean;
|
|
17356
|
+
/**
|
|
17357
|
+
* Contract work classification; unspecified until confirmed. Does not change rate syncing.
|
|
17358
|
+
*/
|
|
17359
|
+
work_classification: 'unspecified' | 'construction' | 'long_term_service' | 'one_time_service';
|
|
17360
|
+
/**
|
|
17361
|
+
* How this job records production completions: one of none (opts out), feature (per site feature, e.g. a turbine), or quantity (a unit count, e.g. modules). Locked once any completion exists.
|
|
17362
|
+
*/
|
|
17363
|
+
production_tracking_kind: 'none' | 'feature' | 'quantity';
|
|
17364
|
+
/**
|
|
17365
|
+
* Custom-field values stored on the job, one row per configuration, including hidden configurations; empty when none.
|
|
17366
|
+
*/
|
|
17367
|
+
custom_fields: Array<CustomFieldResponseObject>;
|
|
17368
|
+
};
|
|
17369
|
+
/**
|
|
17370
|
+
* Prevailing-wage / apprenticeship (PWA) compliance details for a job, used in certified-payroll reporting. Common fields are always present when this object exists; regional fields appear only when applicable to the job's region and regional PWA mode. The property is null when no PWA details have been configured; PWA tracking modes alone do not materialize it.
|
|
17371
|
+
*/
|
|
17372
|
+
export type PwaJobDetailsResponseObjectWritable = {
|
|
17373
|
+
/**
|
|
17374
|
+
* Job contract execution date override. Null means use the project's contract date.
|
|
17375
|
+
*/
|
|
17376
|
+
lock_in_date: string | null;
|
|
17377
|
+
/**
|
|
17378
|
+
* Role of the company on this job for PWA reporting: one of prime_contractor or sub_contractor; null when unset.
|
|
17379
|
+
*/
|
|
17380
|
+
contractor_type: 'prime_contractor' | 'sub_contractor' | null;
|
|
17381
|
+
/**
|
|
17382
|
+
* Whether new positions on the job default to paying the full fringe as cash.
|
|
17383
|
+
*/
|
|
17384
|
+
pay_full_cash_fringe_by_default: boolean;
|
|
17385
|
+
/**
|
|
17386
|
+
* California DIR (Department of Industrial Relations) awarding-body ID; present only for a compatible California prevailing-wage configuration and null when applicable but unset.
|
|
17387
|
+
*/
|
|
17388
|
+
dir_awarding_body_id?: string | null;
|
|
17389
|
+
/**
|
|
17390
|
+
* California DIR project registration ID (an 11-digit number); present only for a compatible California prevailing-wage configuration and null when applicable but unset.
|
|
17391
|
+
*/
|
|
17392
|
+
dir_project_id?: string | null;
|
|
17393
|
+
/**
|
|
17394
|
+
* California DIR project name; present only for a compatible California prevailing-wage configuration and null when applicable but unset.
|
|
17395
|
+
*/
|
|
17396
|
+
dir_project_name?: string | null;
|
|
17397
|
+
/**
|
|
17398
|
+
* California DIR contract ID; present only for a compatible California prevailing-wage configuration and null when applicable but unset.
|
|
17399
|
+
*/
|
|
17400
|
+
dir_contract_id?: string | null;
|
|
17401
|
+
/**
|
|
17402
|
+
* California DIR awarding-body name; present only for a compatible California prevailing-wage configuration and null when applicable but unset.
|
|
17403
|
+
*/
|
|
17404
|
+
dir_project_awarding_body_name?: string | null;
|
|
17405
|
+
/**
|
|
17406
|
+
* California DIR project number; present only for a compatible California prevailing-wage configuration and null when applicable but unset.
|
|
17407
|
+
*/
|
|
17408
|
+
dir_project_number?: string | null;
|
|
17409
|
+
/**
|
|
17410
|
+
* Illinois DOL (Department of Labor) project ID; present only for a compatible Illinois prevailing-wage configuration and null when applicable but unset.
|
|
17411
|
+
*/
|
|
17412
|
+
il_dol_project_id?: string | null;
|
|
17413
|
+
/**
|
|
17414
|
+
* Whether the Illinois project is funded with state capital funds; present only for a compatible Illinois prevailing-wage configuration and null when applicable but unset.
|
|
17415
|
+
*/
|
|
17416
|
+
il_dol_state_capital_funds?: boolean | null;
|
|
17417
|
+
/**
|
|
17418
|
+
* Illinois DOL public-body name; present only for a compatible Illinois prevailing-wage configuration and null when applicable but unset.
|
|
17419
|
+
*/
|
|
17420
|
+
il_dol_public_body_name?: string | null;
|
|
17421
|
+
/**
|
|
17422
|
+
* ID of the Illinois DOL public-body contact; present only for a compatible Illinois prevailing-wage configuration and null when applicable but unset.
|
|
17423
|
+
*/
|
|
17424
|
+
il_dol_public_body_contact_id?: string | null;
|
|
17425
|
+
/**
|
|
17426
|
+
* ID of the Illinois DOL public-body address; present only for a compatible Illinois prevailing-wage configuration and null when applicable but unset.
|
|
17427
|
+
*/
|
|
17428
|
+
il_dol_public_body_address_id?: string | null;
|
|
17429
|
+
/**
|
|
17430
|
+
* Illinois DOL contract number; present only for a compatible Illinois prevailing-wage configuration and null when applicable but unset.
|
|
17431
|
+
*/
|
|
17432
|
+
il_dol_contract_number?: string | null;
|
|
17433
|
+
/**
|
|
17434
|
+
* Illinois SHINES project ID; present only for a compatible Illinois prevailing-wage configuration and null when applicable but unset.
|
|
17435
|
+
*/
|
|
17436
|
+
il_shines_project_id?: string | null;
|
|
17437
|
+
/**
|
|
17438
|
+
* New York DOL prevailing-rate-case (PRC) number, a 10-digit identifier; present only for a compatible New York prevailing-wage configuration and null when applicable but unset.
|
|
17439
|
+
*/
|
|
17440
|
+
ny_dol_prc_number?: string | null;
|
|
17441
|
+
} | null;
|
|
16892
17442
|
/**
|
|
16893
17443
|
* A page of certifications held by your company's workers.
|
|
16894
17444
|
*/
|
|
@@ -20428,6 +20978,220 @@ export type SyncServiceScheduleTemplateResponses = {
|
|
|
20428
20978
|
};
|
|
20429
20979
|
};
|
|
20430
20980
|
export type SyncServiceScheduleTemplateResponse = SyncServiceScheduleTemplateResponses[keyof SyncServiceScheduleTemplateResponses];
|
|
20981
|
+
export type ListProductDocumentsData = {
|
|
20982
|
+
body?: never;
|
|
20983
|
+
path: {
|
|
20984
|
+
product_id: string;
|
|
20985
|
+
};
|
|
20986
|
+
query?: {
|
|
20987
|
+
filter?: string;
|
|
20988
|
+
'filter[unexpected]'?: string;
|
|
20989
|
+
/**
|
|
20990
|
+
* This pagination cursor corresponds to the cursor value found in the response in
|
|
20991
|
+
* `meta.page.next_cursor`.
|
|
20992
|
+
*/
|
|
20993
|
+
'page[cursor]'?: string;
|
|
20994
|
+
/**
|
|
20995
|
+
* 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`.
|
|
20996
|
+
*/
|
|
20997
|
+
'page[limit]'?: number;
|
|
20998
|
+
page?: string;
|
|
20999
|
+
};
|
|
21000
|
+
url: '/api/v1/assets/products/{product_id}/documents';
|
|
21001
|
+
};
|
|
21002
|
+
export type ListProductDocumentsErrors = {
|
|
21003
|
+
/**
|
|
21004
|
+
* Bad Request
|
|
21005
|
+
*/
|
|
21006
|
+
400: Problem;
|
|
21007
|
+
/**
|
|
21008
|
+
* Forbidden
|
|
21009
|
+
*/
|
|
21010
|
+
403: Problem;
|
|
21011
|
+
/**
|
|
21012
|
+
* Not Found
|
|
21013
|
+
*/
|
|
21014
|
+
404: Problem;
|
|
21015
|
+
};
|
|
21016
|
+
export type ListProductDocumentsError = ListProductDocumentsErrors[keyof ListProductDocumentsErrors];
|
|
21017
|
+
export type ListProductDocumentsResponses = {
|
|
21018
|
+
/**
|
|
21019
|
+
* Success
|
|
21020
|
+
*/
|
|
21021
|
+
200: {
|
|
21022
|
+
meta: Meta;
|
|
21023
|
+
links: Links;
|
|
21024
|
+
data: Array<AssetsProductDocumentResponseObject>;
|
|
21025
|
+
};
|
|
21026
|
+
};
|
|
21027
|
+
export type ListProductDocumentsResponse = ListProductDocumentsResponses[keyof ListProductDocumentsResponses];
|
|
21028
|
+
export type CreateProductDocumentData = {
|
|
21029
|
+
body: AssetsDocumentParameters;
|
|
21030
|
+
path: {
|
|
21031
|
+
product_id: string;
|
|
21032
|
+
};
|
|
21033
|
+
query?: never;
|
|
21034
|
+
url: '/api/v1/assets/products/{product_id}/documents';
|
|
21035
|
+
};
|
|
21036
|
+
export type CreateProductDocumentErrors = {
|
|
21037
|
+
/**
|
|
21038
|
+
* Bad Request (missing performed_by_user_id)
|
|
21039
|
+
*/
|
|
21040
|
+
400: Problem;
|
|
21041
|
+
/**
|
|
21042
|
+
* Forbidden
|
|
21043
|
+
*/
|
|
21044
|
+
403: Problem;
|
|
21045
|
+
/**
|
|
21046
|
+
* Not Found
|
|
21047
|
+
*/
|
|
21048
|
+
404: Problem;
|
|
21049
|
+
/**
|
|
21050
|
+
* Unprocessable Content
|
|
21051
|
+
*/
|
|
21052
|
+
422: Problem;
|
|
21053
|
+
};
|
|
21054
|
+
export type CreateProductDocumentError = CreateProductDocumentErrors[keyof CreateProductDocumentErrors];
|
|
21055
|
+
export type CreateProductDocumentResponses = {
|
|
21056
|
+
/**
|
|
21057
|
+
* Created
|
|
21058
|
+
*/
|
|
21059
|
+
201: AssetsProductDocumentResponseObject;
|
|
21060
|
+
};
|
|
21061
|
+
export type CreateProductDocumentResponse = CreateProductDocumentResponses[keyof CreateProductDocumentResponses];
|
|
21062
|
+
export type DeleteProductDocumentData = {
|
|
21063
|
+
body?: never;
|
|
21064
|
+
path: {
|
|
21065
|
+
product_id: string;
|
|
21066
|
+
id: string;
|
|
21067
|
+
};
|
|
21068
|
+
query?: never;
|
|
21069
|
+
url: '/api/v1/assets/products/{product_id}/documents/{id}';
|
|
21070
|
+
};
|
|
21071
|
+
export type DeleteProductDocumentErrors = {
|
|
21072
|
+
/**
|
|
21073
|
+
* Forbidden
|
|
21074
|
+
*/
|
|
21075
|
+
403: Problem;
|
|
21076
|
+
/**
|
|
21077
|
+
* Not Found
|
|
21078
|
+
*/
|
|
21079
|
+
404: Problem;
|
|
21080
|
+
};
|
|
21081
|
+
export type DeleteProductDocumentError = DeleteProductDocumentErrors[keyof DeleteProductDocumentErrors];
|
|
21082
|
+
export type DeleteProductDocumentResponses = {
|
|
21083
|
+
/**
|
|
21084
|
+
* No Content
|
|
21085
|
+
*/
|
|
21086
|
+
204: void;
|
|
21087
|
+
};
|
|
21088
|
+
export type DeleteProductDocumentResponse = DeleteProductDocumentResponses[keyof DeleteProductDocumentResponses];
|
|
21089
|
+
export type GetProductDocumentData = {
|
|
21090
|
+
body?: never;
|
|
21091
|
+
path: {
|
|
21092
|
+
product_id: string;
|
|
21093
|
+
id: string;
|
|
21094
|
+
};
|
|
21095
|
+
query?: never;
|
|
21096
|
+
url: '/api/v1/assets/products/{product_id}/documents/{id}';
|
|
21097
|
+
};
|
|
21098
|
+
export type GetProductDocumentErrors = {
|
|
21099
|
+
/**
|
|
21100
|
+
* Forbidden
|
|
21101
|
+
*/
|
|
21102
|
+
403: Problem;
|
|
21103
|
+
/**
|
|
21104
|
+
* Not Found
|
|
21105
|
+
*/
|
|
21106
|
+
404: Problem;
|
|
21107
|
+
};
|
|
21108
|
+
export type GetProductDocumentError = GetProductDocumentErrors[keyof GetProductDocumentErrors];
|
|
21109
|
+
export type GetProductDocumentResponses = {
|
|
21110
|
+
/**
|
|
21111
|
+
* Success
|
|
21112
|
+
*/
|
|
21113
|
+
200: AssetsProductDocumentResponseObject;
|
|
21114
|
+
};
|
|
21115
|
+
export type GetProductDocumentResponse = GetProductDocumentResponses[keyof GetProductDocumentResponses];
|
|
21116
|
+
export type UpdateProductDocumentData = {
|
|
21117
|
+
body: AssetsDocumentUpdateParameters;
|
|
21118
|
+
path: {
|
|
21119
|
+
product_id: string;
|
|
21120
|
+
id: string;
|
|
21121
|
+
};
|
|
21122
|
+
query?: never;
|
|
21123
|
+
url: '/api/v1/assets/products/{product_id}/documents/{id}';
|
|
21124
|
+
};
|
|
21125
|
+
export type UpdateProductDocumentErrors = {
|
|
21126
|
+
/**
|
|
21127
|
+
* Bad Request
|
|
21128
|
+
*/
|
|
21129
|
+
400: Problem;
|
|
21130
|
+
/**
|
|
21131
|
+
* Forbidden
|
|
21132
|
+
*/
|
|
21133
|
+
403: Problem;
|
|
21134
|
+
/**
|
|
21135
|
+
* Not Found
|
|
21136
|
+
*/
|
|
21137
|
+
404: Problem;
|
|
21138
|
+
};
|
|
21139
|
+
export type UpdateProductDocumentError = UpdateProductDocumentErrors[keyof UpdateProductDocumentErrors];
|
|
21140
|
+
export type UpdateProductDocumentResponses = {
|
|
21141
|
+
/**
|
|
21142
|
+
* Success
|
|
21143
|
+
*/
|
|
21144
|
+
200: AssetsProductDocumentResponseObject;
|
|
21145
|
+
};
|
|
21146
|
+
export type UpdateProductDocumentResponse = UpdateProductDocumentResponses[keyof UpdateProductDocumentResponses];
|
|
21147
|
+
export type ListProductDocumentVersionsData = {
|
|
21148
|
+
body?: never;
|
|
21149
|
+
path: {
|
|
21150
|
+
product_id: string;
|
|
21151
|
+
document_id: string;
|
|
21152
|
+
};
|
|
21153
|
+
query?: {
|
|
21154
|
+
/**
|
|
21155
|
+
* This pagination cursor corresponds to the cursor value found in the response in
|
|
21156
|
+
* `meta.page.next_cursor`.
|
|
21157
|
+
*/
|
|
21158
|
+
'page[cursor]'?: string;
|
|
21159
|
+
/**
|
|
21160
|
+
* 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`.
|
|
21161
|
+
*/
|
|
21162
|
+
'page[limit]'?: number;
|
|
21163
|
+
page?: string;
|
|
21164
|
+
filter?: string;
|
|
21165
|
+
'filter[unexpected]'?: string;
|
|
21166
|
+
};
|
|
21167
|
+
url: '/api/v1/assets/products/{product_id}/documents/{document_id}/versions';
|
|
21168
|
+
};
|
|
21169
|
+
export type ListProductDocumentVersionsErrors = {
|
|
21170
|
+
/**
|
|
21171
|
+
* Bad Request
|
|
21172
|
+
*/
|
|
21173
|
+
400: Problem;
|
|
21174
|
+
/**
|
|
21175
|
+
* Forbidden
|
|
21176
|
+
*/
|
|
21177
|
+
403: Problem;
|
|
21178
|
+
/**
|
|
21179
|
+
* Not Found
|
|
21180
|
+
*/
|
|
21181
|
+
404: Problem;
|
|
21182
|
+
};
|
|
21183
|
+
export type ListProductDocumentVersionsError = ListProductDocumentVersionsErrors[keyof ListProductDocumentVersionsErrors];
|
|
21184
|
+
export type ListProductDocumentVersionsResponses = {
|
|
21185
|
+
/**
|
|
21186
|
+
* Success
|
|
21187
|
+
*/
|
|
21188
|
+
200: {
|
|
21189
|
+
meta: Meta;
|
|
21190
|
+
links: Links;
|
|
21191
|
+
data: Array<AssetsDocumentVersionResponseObject>;
|
|
21192
|
+
};
|
|
21193
|
+
};
|
|
21194
|
+
export type ListProductDocumentVersionsResponse = ListProductDocumentVersionsResponses[keyof ListProductDocumentVersionsResponses];
|
|
20431
21195
|
export type ListAssetsSitesData = {
|
|
20432
21196
|
body?: never;
|
|
20433
21197
|
path?: never;
|
|
@@ -24451,6 +25215,10 @@ export type DeleteGroupErrors = {
|
|
|
24451
25215
|
* Not Found
|
|
24452
25216
|
*/
|
|
24453
25217
|
404: Problem;
|
|
25218
|
+
/**
|
|
25219
|
+
* Unprocessable Content (group is followed)
|
|
25220
|
+
*/
|
|
25221
|
+
422: Problem;
|
|
24454
25222
|
};
|
|
24455
25223
|
export type DeleteGroupError = DeleteGroupErrors[keyof DeleteGroupErrors];
|
|
24456
25224
|
export type DeleteGroupResponses = {
|
|
@@ -27279,6 +28047,36 @@ export type CreateJobResponses = {
|
|
|
27279
28047
|
201: JobResponseObject;
|
|
27280
28048
|
};
|
|
27281
28049
|
export type CreateJobResponse = CreateJobResponses[keyof CreateJobResponses];
|
|
28050
|
+
export type DeleteJobData = {
|
|
28051
|
+
body?: never;
|
|
28052
|
+
path: {
|
|
28053
|
+
id: string;
|
|
28054
|
+
};
|
|
28055
|
+
query?: never;
|
|
28056
|
+
url: '/api/v1/jobs/{id}';
|
|
28057
|
+
};
|
|
28058
|
+
export type DeleteJobErrors = {
|
|
28059
|
+
/**
|
|
28060
|
+
* Forbidden
|
|
28061
|
+
*/
|
|
28062
|
+
403: Problem;
|
|
28063
|
+
/**
|
|
28064
|
+
* Not Found
|
|
28065
|
+
*/
|
|
28066
|
+
404: Problem;
|
|
28067
|
+
/**
|
|
28068
|
+
* Unprocessable Content
|
|
28069
|
+
*/
|
|
28070
|
+
422: Problem;
|
|
28071
|
+
};
|
|
28072
|
+
export type DeleteJobError = DeleteJobErrors[keyof DeleteJobErrors];
|
|
28073
|
+
export type DeleteJobResponses = {
|
|
28074
|
+
/**
|
|
28075
|
+
* No Content
|
|
28076
|
+
*/
|
|
28077
|
+
204: void;
|
|
28078
|
+
};
|
|
28079
|
+
export type DeleteJobResponse = DeleteJobResponses[keyof DeleteJobResponses];
|
|
27282
28080
|
export type GetJobData = {
|
|
27283
28081
|
body?: never;
|
|
27284
28082
|
path: {
|
|
@@ -34291,6 +35089,10 @@ export type UpdateApprenticeshipOccupationErrors = {
|
|
|
34291
35089
|
* Forbidden
|
|
34292
35090
|
*/
|
|
34293
35091
|
403: Problem;
|
|
35092
|
+
/**
|
|
35093
|
+
* Not Found
|
|
35094
|
+
*/
|
|
35095
|
+
404: Problem;
|
|
34294
35096
|
/**
|
|
34295
35097
|
* Unprocessable Content
|
|
34296
35098
|
*/
|
|
@@ -35862,10 +36664,6 @@ export type CancelTimecodeScheduledTerminationErrors = {
|
|
|
35862
36664
|
* Not Found
|
|
35863
36665
|
*/
|
|
35864
36666
|
404: Problem;
|
|
35865
|
-
/**
|
|
35866
|
-
* Conflict
|
|
35867
|
-
*/
|
|
35868
|
-
409: Problem;
|
|
35869
36667
|
/**
|
|
35870
36668
|
* Precondition Failed
|
|
35871
36669
|
*/
|
|
@@ -36633,6 +37431,49 @@ export type CreatePayPeriodConfigResponses = {
|
|
|
36633
37431
|
201: PayPeriodConfigResponseObject;
|
|
36634
37432
|
};
|
|
36635
37433
|
export type CreatePayPeriodConfigResponse = CreatePayPeriodConfigResponses[keyof CreatePayPeriodConfigResponses];
|
|
37434
|
+
export type DeletePayPeriodConfigData = {
|
|
37435
|
+
body?: never;
|
|
37436
|
+
headers: {
|
|
37437
|
+
/**
|
|
37438
|
+
* Version validator this write is composed against — the `ETag` from a read of this schedule, or `*` to write against whatever exists. See "Version validators" in the API overview.
|
|
37439
|
+
*/
|
|
37440
|
+
'If-Match': string;
|
|
37441
|
+
};
|
|
37442
|
+
path: {
|
|
37443
|
+
id: string;
|
|
37444
|
+
};
|
|
37445
|
+
query?: never;
|
|
37446
|
+
url: '/api/v1/timekeeping/pay_period_configs/{id}';
|
|
37447
|
+
};
|
|
37448
|
+
export type DeletePayPeriodConfigErrors = {
|
|
37449
|
+
/**
|
|
37450
|
+
* Forbidden
|
|
37451
|
+
*/
|
|
37452
|
+
403: Problem;
|
|
37453
|
+
/**
|
|
37454
|
+
* Not Found
|
|
37455
|
+
*/
|
|
37456
|
+
404: Problem;
|
|
37457
|
+
/**
|
|
37458
|
+
* Conflict
|
|
37459
|
+
*/
|
|
37460
|
+
409: Problem;
|
|
37461
|
+
/**
|
|
37462
|
+
* Precondition Failed
|
|
37463
|
+
*/
|
|
37464
|
+
412: Problem;
|
|
37465
|
+
/**
|
|
37466
|
+
* Precondition Required
|
|
37467
|
+
*/
|
|
37468
|
+
428: Problem;
|
|
37469
|
+
};
|
|
37470
|
+
export type DeletePayPeriodConfigError = DeletePayPeriodConfigErrors[keyof DeletePayPeriodConfigErrors];
|
|
37471
|
+
export type DeletePayPeriodConfigResponses = {
|
|
37472
|
+
/**
|
|
37473
|
+
* Accepted
|
|
37474
|
+
*/
|
|
37475
|
+
202: unknown;
|
|
37476
|
+
};
|
|
36636
37477
|
export type GetPayPeriodConfigData = {
|
|
36637
37478
|
body?: never;
|
|
36638
37479
|
path: {
|
|
@@ -36664,6 +37505,54 @@ export type GetPayPeriodConfigResponses = {
|
|
|
36664
37505
|
200: PayPeriodConfigResponseObject;
|
|
36665
37506
|
};
|
|
36666
37507
|
export type GetPayPeriodConfigResponse = GetPayPeriodConfigResponses[keyof GetPayPeriodConfigResponses];
|
|
37508
|
+
export type UpdatePayPeriodConfigData = {
|
|
37509
|
+
body: PayPeriodConfigUpdateParameters;
|
|
37510
|
+
headers: {
|
|
37511
|
+
/**
|
|
37512
|
+
* Version validator this write is composed against — the `ETag` from a read of this schedule, or `*` to write against whatever exists. See "Version validators" in the API overview.
|
|
37513
|
+
*/
|
|
37514
|
+
'If-Match': string;
|
|
37515
|
+
};
|
|
37516
|
+
path: {
|
|
37517
|
+
id: string;
|
|
37518
|
+
};
|
|
37519
|
+
query?: never;
|
|
37520
|
+
url: '/api/v1/timekeeping/pay_period_configs/{id}';
|
|
37521
|
+
};
|
|
37522
|
+
export type UpdatePayPeriodConfigErrors = {
|
|
37523
|
+
/**
|
|
37524
|
+
* Bad Request
|
|
37525
|
+
*/
|
|
37526
|
+
400: Problem;
|
|
37527
|
+
/**
|
|
37528
|
+
* Forbidden
|
|
37529
|
+
*/
|
|
37530
|
+
403: Problem;
|
|
37531
|
+
/**
|
|
37532
|
+
* Not Found
|
|
37533
|
+
*/
|
|
37534
|
+
404: Problem;
|
|
37535
|
+
/**
|
|
37536
|
+
* Precondition Failed
|
|
37537
|
+
*/
|
|
37538
|
+
412: Problem;
|
|
37539
|
+
/**
|
|
37540
|
+
* Invalid configuration
|
|
37541
|
+
*/
|
|
37542
|
+
422: Problem;
|
|
37543
|
+
/**
|
|
37544
|
+
* Precondition Required
|
|
37545
|
+
*/
|
|
37546
|
+
428: Problem;
|
|
37547
|
+
};
|
|
37548
|
+
export type UpdatePayPeriodConfigError = UpdatePayPeriodConfigErrors[keyof UpdatePayPeriodConfigErrors];
|
|
37549
|
+
export type UpdatePayPeriodConfigResponses = {
|
|
37550
|
+
/**
|
|
37551
|
+
* Accepted
|
|
37552
|
+
*/
|
|
37553
|
+
202: PayPeriodConfigResponseObject;
|
|
37554
|
+
};
|
|
37555
|
+
export type UpdatePayPeriodConfigResponse = UpdatePayPeriodConfigResponses[keyof UpdatePayPeriodConfigResponses];
|
|
36667
37556
|
export type ListTimeCardActualsData = {
|
|
36668
37557
|
body?: never;
|
|
36669
37558
|
path?: never;
|