@dsptch-work/api-client 0.10.0 → 0.12.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.
@@ -170,6 +170,12 @@ export type Problem = {
170
170
  *
171
171
  * The resource's timeline already ends at a scheduled termination, and scheduling a second one would silently move it. Moving an end is two steps on purpose: cancel the standing termination, then schedule the one you want.
172
172
  *
173
+ * ### product_archived
174
+ *
175
+ * **Product Archived**
176
+ *
177
+ * 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.
178
+ *
173
179
  * ### recorded_since_termination
174
180
  *
175
181
  * **Timecode Changed Since Termination**
@@ -254,9 +260,9 @@ export type Problem = {
254
260
  *
255
261
  * ### invalid_signed_id
256
262
  *
257
- * **Invalid Attachment Signed Id**
263
+ * **Attachment Upload Not Found**
258
264
  *
259
- * An attachment signed id an avatar's, a logo's is not a string or fails signature verification. Obtain a fresh signed id from the direct-uploads endpoint and retry.
265
+ * An attachment signed id names no upload this endpoint can read. A signed id is issued for one `resource` and verifies only there, so an id for a different resource is indistinguishable from one that is malformed, expired, or tampered with, and all of them answer alike. The message names the resource the upload needed; upload the file again to the direct-uploads endpoint naming it, and pass the signed id that call returns.
260
266
  *
261
267
  * ### non_numeric_cents
262
268
  *
@@ -339,7 +345,7 @@ export type Problem = {
339
345
  * Another write to the same resource held it for longer than this request was willing to wait, so nothing was applied. The request itself is fine — resend it unchanged after the `Retry-After` window.
340
346
  *
341
347
  */
342
- 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' | 'insufficient_api_key_scope' | 'not_found' | 'already_terminated' | 'recorded_since_termination' | 'span_beyond_timeline_end' | 'version_overlap' | 'precondition_failed' | 'attachment_not_image' | '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' | 'non_numeric_cents' | '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' | 'write_contended';
348
+ 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' | 'insufficient_api_key_scope' | 'not_found' | 'already_terminated' | 'product_archived' | 'recorded_since_termination' | 'span_beyond_timeline_end' | 'version_overlap' | 'precondition_failed' | 'attachment_not_image' | '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' | 'non_numeric_cents' | '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' | 'write_contended';
343
349
  export type ApiKeyScopeResponseObject = {
344
350
  resource: string;
345
351
  action: 'read' | 'create' | 'update' | 'delete';
@@ -349,6 +355,10 @@ export type ApiKeyScopeResponseObject = {
349
355
  * Register a file for direct upload — send its metadata to receive a blob plus a one-time URL for uploading the file's bytes to storage.
350
356
  */
351
357
  export type DirectUploadParameters = {
358
+ /**
359
+ * 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.
360
+ */
361
+ resource: 'assets.items' | 'assets.items.documents' | 'assets.items.service_events' | 'assets.products' | 'assets.vendors' | 'users';
352
362
  /**
353
363
  * Metadata describing the file being registered, before its bytes are uploaded.
354
364
  */
@@ -424,7 +434,7 @@ export type DirectUploadResponseObject = {
424
434
  */
425
435
  attachable_sgid: string;
426
436
  /**
427
- * Opaque signed reference to this blob; pass it as signed_id in other endpoints to attach the uploaded file to a record.
437
+ * Opaque signed reference to this blob. Pass it to the endpoint for the resource this upload named, in that endpoint's signed-ID property — `file` for an attachment or a document, `avatar_signed_id` for a user, `logo_signed_id` for a vendor — to attach the uploaded file to a record. No endpoint reads a property literally named signed_id. Expires one week after it is issued — register the file again to get a fresh one.
428
438
  */
429
439
  signed_id: string;
430
440
  /**
@@ -1223,6 +1233,9 @@ export type TimecodeGenesisParameters = {
1223
1233
  */
1224
1234
  effective_date: string;
1225
1235
  };
1236
+ /**
1237
+ * Request body for scheduling a timecode's termination: the date from which it stops being valid. The body is required — the endpoint reads effective_date with `params.expect`, so a request omitting it is refused with `400`.
1238
+ */
1226
1239
  export type TimecodeScheduledTerminationParameters = {
1227
1240
  /**
1228
1241
  * When the timecode stops being valid. Must fall strictly after the version family's `valid_from`; an end at or before it would leave no coverage at all and is refused with `422`.
@@ -1355,6 +1368,10 @@ export type AssetsProductResponseObject = {
1355
1368
  * Images attached to the product; each carries a download url for its file.
1356
1369
  */
1357
1370
  images: Array<AssetsAttachmentResponseObject>;
1371
+ /**
1372
+ * When the product was archived (ISO 8601); null while active. Archiving a product also archives all of its items; both are hidden from listings by default (see filter[state]) and read-only until unarchived.
1373
+ */
1374
+ archived_at: string | null;
1358
1375
  /**
1359
1376
  * When the record was created (ISO 8601).
1360
1377
  */
@@ -1572,7 +1589,7 @@ export type PerDiemParameters = {
1572
1589
  /**
1573
1590
  * Allowance amount in cents, as a string (e.g. "7500" is $75.00).
1574
1591
  */
1575
- rate_cents: string | null;
1592
+ rate_cents: string;
1576
1593
  /**
1577
1594
  * ISO 4217 currency code, e.g. "USD".
1578
1595
  */
@@ -1898,10 +1915,6 @@ export type TimeCardPerDiemParameters = {
1898
1915
  * ID of the catalog per diem to record; its rate, currency, and taxable flag are copied onto the entry. Required.
1899
1916
  */
1900
1917
  per_diem_id: string;
1901
- /**
1902
- * Accepted but ignored — the taxable flag is derived from the referenced catalog per diem.
1903
- */
1904
- taxable?: boolean;
1905
1918
  };
1906
1919
  /**
1907
1920
  * A holiday on a pay schedule's holiday calendar — a fixed (month + day) or floating (nth weekday of a month) date that gets holiday-pay treatment when a time entry's timecode opts into holiday handling.
@@ -2861,6 +2874,19 @@ export type JobParameters = {
2861
2874
  */
2862
2875
  label?: string | null;
2863
2876
  } | null;
2877
+ /**
2878
+ * Custom field values to add to the job, addressed by custom field config id; null when none. Each row creates a value, so a config that already carries one on this job is refused with a 422 — to overwrite, send the value under a top-level key named after the custom field instead. Supplying this key turns that by-name form off for the request.
2879
+ */
2880
+ custom_fields_attributes?: Array<{
2881
+ /**
2882
+ * ID of the custom field config the value belongs to; the config must belong to the company that owns the job.
2883
+ */
2884
+ custom_field_config_id: string;
2885
+ /**
2886
+ * Value to store for the custom field; null when unset.
2887
+ */
2888
+ value?: string | null;
2889
+ }> | null;
2864
2890
  /**
2865
2891
  * Prevailing-wage / apprenticeship (PWA) compliance details to set on the job; which fields apply depends on region. Null when the job tracks no PWA compliance.
2866
2892
  */
@@ -3703,21 +3729,21 @@ export type ManagerTimeEntryApprovalParameters = {
3703
3729
  approver_user_id: string;
3704
3730
  };
3705
3731
  /**
3706
- * Request body for creating or updating a time entry; on create, timekeeping_time_card_id, start_time, and end_time are required.
3732
+ * The time-entry body fields shared by the create and update bodies; each of those declares its own requiredness.
3707
3733
  */
3708
3734
  export type TimeEntryParameters = {
3709
3735
  /**
3710
3736
  * Id of the time card to attach the entry to; user_id is derived server-side from it. Required on create.
3711
3737
  */
3712
- timekeeping_time_card_id: string;
3738
+ timekeeping_time_card_id?: string;
3713
3739
  /**
3714
3740
  * these will be rounded to the nearest second
3715
3741
  */
3716
- start_time: string;
3742
+ start_time?: string;
3717
3743
  /**
3718
3744
  * these will be rounded to the nearest second
3719
3745
  */
3720
- end_time: string;
3746
+ end_time?: string;
3721
3747
  /**
3722
3748
  * Id of the job to work against; the worker must have a Position covering that job at start_time. Send null (or omit) for no job.
3723
3749
  */
@@ -3742,11 +3768,25 @@ export type TimeEntryParameters = {
3742
3768
  * Feature ids to allocate to this time entry. Only features your company can view are accepted.
3743
3769
  */
3744
3770
  feature_ids?: Array<string> | null;
3771
+ };
3772
+ /**
3773
+ * Request body for creating a time entry — the time_entry_parameters fields, of which timekeeping_time_card_id, start_time, and end_time are required, plus the explicit "no feature" acknowledgement.
3774
+ */
3775
+ export type TimeEntryCreateParameters = TimeEntryParameters & {
3745
3776
  /**
3746
3777
  * Set true to record an explicit "no feature" answer when the job requires a feature allocation and you're not supplying one.
3747
3778
  */
3748
3779
  feature_allocation_acknowledged?: boolean | null;
3749
3780
  };
3781
+ /**
3782
+ * Request body for updating a time entry — the time_entry_parameters fields, every one optional, plus the acknowledgement that clears an apprenticeship allocation conflict.
3783
+ */
3784
+ export type TimeEntryUpdateParameters = TimeEntryParameters & {
3785
+ /**
3786
+ * Set true to accept dropping the time card's apprenticeship hour allocations when the new times invalidate them; without it such an update returns 422.
3787
+ */
3788
+ confirm_allocation_conflict?: boolean | null;
3789
+ };
3750
3790
  /**
3751
3791
  * 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.
3752
3792
  */
@@ -3948,7 +3988,7 @@ export type UserCompanyCreateParameters = {
3948
3988
  /**
3949
3989
  * How the worker is paid: hourly or salary.
3950
3990
  */
3951
- compensation_type?: string | null;
3991
+ compensation_type?: 'hourly' | 'salary';
3952
3992
  /**
3953
3993
  * Whether to enroll the worker in Time and Attendance (time tracking).
3954
3994
  */
@@ -4024,7 +4064,7 @@ export type UserCompanyScheduledChangesParameters = {
4024
4064
  /**
4025
4065
  * How the worker is paid: hourly or salary.
4026
4066
  */
4027
- compensation_type?: string;
4067
+ compensation_type?: 'hourly' | 'salary';
4028
4068
  /**
4029
4069
  * Whether the worker is eligible for overtime pay.
4030
4070
  */
@@ -6811,7 +6851,7 @@ export type CertificationParameters = {
6811
6851
  /**
6812
6852
  * Whether this is a recognized, vetted credential type. This is a property of the certification definition, distinct from the verified flag on a certification a worker holds.
6813
6853
  */
6814
- verified?: boolean | null;
6854
+ verified?: boolean;
6815
6855
  /**
6816
6856
  * How long the certification stays valid, as an ISO 8601 duration (for example "P1Y" for one year or "P6M" for six months). Drives expiry reminders on held certifications; null when the certification does not expire.
6817
6857
  */
@@ -6959,7 +6999,7 @@ export type UserCertificationParameters = {
6959
6999
  /**
6960
7000
  * Whether DSPTCH has verified this held certification. Distinct from the verified flag on the certification definition itself.
6961
7001
  */
6962
- verified?: boolean | null;
7002
+ verified?: boolean;
6963
7003
  /**
6964
7004
  * When the held certification expires (YYYY-MM-DD). Must be after received_at; null when it does not expire.
6965
7005
  */
@@ -7315,6 +7355,10 @@ export type FederalJobWageDeterminationResponseObject = {
7315
7355
  * UUID of the craft grouping (trade) this determination pools into for apprenticeship-ratio tracking; obtain one from the job or project PWA trades endpoint before assigning it here.
7316
7356
  */
7317
7357
  pwa_trade_id: string;
7358
+ /**
7359
+ * ID of the overtime package whose rules apply to this determination, or null when none is set.
7360
+ */
7361
+ overtime_package_id: string | null;
7318
7362
  /**
7319
7363
  * Determination type — the Federal or Regional subtype (an STI class name). Federal carries a DOL class code and construction category; Regional carries the nested regional_fields object.
7320
7364
  */
@@ -7376,6 +7420,10 @@ export type RegionalJobWageDeterminationResponseObject = {
7376
7420
  * UUID of the craft grouping (trade) this determination pools into for apprenticeship-ratio tracking; obtain one from the job or project PWA trades endpoint before assigning it here.
7377
7421
  */
7378
7422
  pwa_trade_id: string;
7423
+ /**
7424
+ * ID of the overtime package whose rules apply to this determination, or null when none is set.
7425
+ */
7426
+ overtime_package_id: string | null;
7379
7427
  /**
7380
7428
  * Determination type — the Federal or Regional subtype (an STI class name). Federal carries a DOL class code and construction category; Regional carries the nested regional_fields object.
7381
7429
  */
@@ -7426,6 +7474,7 @@ export type FederalJobWageDeterminationHistoryVersionObject = {
7426
7474
  job_wage_determination_id: string;
7427
7475
  job_id: string;
7428
7476
  pwa_trade_id: string;
7477
+ overtime_package_id: string | null;
7429
7478
  type: 'Pwa::JobWageDeterminations::Federal';
7430
7479
  labor_classification: string;
7431
7480
  hourly_rate_cents: string;
@@ -7447,6 +7496,7 @@ export type RegionalJobWageDeterminationHistoryVersionObject = {
7447
7496
  job_wage_determination_id: string;
7448
7497
  job_id: string;
7449
7498
  pwa_trade_id: string;
7499
+ overtime_package_id: string | null;
7450
7500
  type: 'Pwa::JobWageDeterminations::Regional';
7451
7501
  labor_classification: string;
7452
7502
  hourly_rate_cents: string;
@@ -7472,6 +7522,7 @@ export type FederalJobWageDeterminationHistoryCorrectionObject = {
7472
7522
  job_wage_determination_id: string;
7473
7523
  job_id: string;
7474
7524
  pwa_trade_id: string;
7525
+ overtime_package_id: string | null;
7475
7526
  type: 'Pwa::JobWageDeterminations::Federal';
7476
7527
  labor_classification: string;
7477
7528
  hourly_rate_cents: string;
@@ -7491,6 +7542,7 @@ export type RegionalJobWageDeterminationHistoryCorrectionObject = {
7491
7542
  job_wage_determination_id: string;
7492
7543
  job_id: string;
7493
7544
  pwa_trade_id: string;
7545
+ overtime_package_id: string | null;
7494
7546
  type: 'Pwa::JobWageDeterminations::Regional';
7495
7547
  labor_classification: string;
7496
7548
  hourly_rate_cents: string;
@@ -7578,7 +7630,7 @@ export type RegionalWageDeterminationFieldsResponse = {
7578
7630
  [key: string]: string | null;
7579
7631
  };
7580
7632
  /**
7581
- * Parameters for creating a job wage determination. Provide the Federal or Regional shape; the type discriminator selects which. There is no update endpoint.
7633
+ * Parameters for creating a job wage determination. Provide the Federal or Regional shape; the type discriminator selects which. Editing an existing determination uses the update parameters, which take an `effective_from` instead of a type.
7582
7634
  */
7583
7635
  export type JobWageDeterminationParameters = ({
7584
7636
  type: 'Pwa::JobWageDeterminations::Federal';
@@ -7652,6 +7704,100 @@ export type RegionalJobWageDeterminationParameters = {
7652
7704
  general_wage_determination?: string | null;
7653
7705
  regional_fields?: RegionalWageDeterminationFields;
7654
7706
  };
7707
+ /**
7708
+ * Parameters for editing a job wage determination from a point in valid time forward. The type is fixed by the determination the id names and is not sent.
7709
+ */
7710
+ export type JobWageDeterminationUpdateParameters = {
7711
+ /**
7712
+ * Where the edit starts applying, as a calendar date (`YYYY-MM-DD`); a value carrying a time component is refused with `422` rather than truncated. Every version from this date forward takes the new values; earlier versions are untouched. Optional; defaults to the start of the version valid now, which corrects that version in place.
7713
+ */
7714
+ effective_from?: string;
7715
+ /**
7716
+ * Human-readable labor classification — the craft or trade this determination sets rates for; the display label, distinct from the machine class code.
7717
+ */
7718
+ labor_classification?: string;
7719
+ /**
7720
+ * UUID of the craft grouping (trade) this determination pools into for apprenticeship-ratio tracking; obtain one from the job or project PWA trades endpoint before assigning it here.
7721
+ */
7722
+ pwa_trade_id?: string;
7723
+ /**
7724
+ * Base hourly wage rate, in cents as a decimal string (e.g. "5380.0" is $53.80).
7725
+ */
7726
+ hourly_rate_cents?: string;
7727
+ /**
7728
+ * Hourly fringe rate, in cents as a decimal string (e.g. "1200.0" is $12.00).
7729
+ */
7730
+ fringe_rate_cents?: string;
7731
+ /**
7732
+ * The DOL wage-classification code identifying this classification within its general decision (e.g. "LABO0324-014"); null when not recorded.
7733
+ */
7734
+ class_code?: string | null;
7735
+ /**
7736
+ * Broad DOL construction category — one of building, heavy, highway, or residential; null when not recorded.
7737
+ */
7738
+ construction_category?: 'building' | 'heavy' | 'highway' | 'residential' | null;
7739
+ /**
7740
+ * The DOL general wage determination the rates are drawn from — the general decision number plus its revision (e.g. "CA20230001/5"); null when not recorded.
7741
+ */
7742
+ general_wage_determination?: string | null;
7743
+ regional_fields?: RegionalWageDeterminationFields;
7744
+ };
7745
+ /**
7746
+ * Parameters for an effective-dated change to a job wage determination, applying from a calendar date forward. The type is fixed by the determination the id names and is not sent.
7747
+ */
7748
+ export type JobWageDeterminationScheduledChangeParameters = {
7749
+ /**
7750
+ * Where the change starts applying, as a calendar date (`YYYY-MM-DD`); a value carrying a time component is refused with `422` rather than truncated. A boundary is created at that date when needed, and the new values apply from there forward, carrying through every later version already scheduled. Past, current, and future dates are all accepted, so long as the date falls on or after the determination's timeline begins and before any scheduled termination. A date already reached reconciles derived pay data immediately; a date still ahead reconciles at that date.
7751
+ */
7752
+ effective_date: string;
7753
+ /**
7754
+ * Human-readable labor classification — the craft or trade this determination sets rates for; the display label, distinct from the machine class code.
7755
+ */
7756
+ labor_classification?: string;
7757
+ /**
7758
+ * UUID of the craft grouping (trade) this determination pools into for apprenticeship-ratio tracking; obtain one from the job or project PWA trades endpoint before assigning it here.
7759
+ */
7760
+ pwa_trade_id?: string;
7761
+ /**
7762
+ * Base hourly wage rate, in cents as a decimal string (e.g. "5380.0" is $53.80).
7763
+ */
7764
+ hourly_rate_cents?: string;
7765
+ /**
7766
+ * Hourly fringe rate, in cents as a decimal string (e.g. "1200.0" is $12.00).
7767
+ */
7768
+ fringe_rate_cents?: string;
7769
+ /**
7770
+ * The DOL wage-classification code identifying this classification within its general decision (e.g. "LABO0324-014"); null when not recorded.
7771
+ */
7772
+ class_code?: string | null;
7773
+ /**
7774
+ * Broad DOL construction category — one of building, heavy, highway, or residential; null when not recorded.
7775
+ */
7776
+ construction_category?: 'building' | 'heavy' | 'highway' | 'residential' | null;
7777
+ /**
7778
+ * The DOL general wage determination the rates are drawn from — the general decision number plus its revision (e.g. "CA20230001/5"); null when not recorded.
7779
+ */
7780
+ general_wage_determination?: string | null;
7781
+ regional_fields?: RegionalWageDeterminationFields;
7782
+ };
7783
+ /**
7784
+ * Parameters for moving where a job wage determination's timeline begins.
7785
+ */
7786
+ export type JobWageDeterminationGenesisParameters = {
7787
+ /**
7788
+ * The timeline's new start, as a calendar date (`YYYY-MM-DD`); a value carrying a time component is refused with `422` rather than truncated. Moving it earlier extends the first version back to it. Moving it later drops every version whose coverage ended at or before it and truncates the one spanning it, so what those versions said stops being readable. Refused with `422` when the new start would fall at or after a scheduled termination.
7789
+ */
7790
+ effective_date: string;
7791
+ };
7792
+ /**
7793
+ * Parameters for scheduling when a job wage determination stops being valid.
7794
+ */
7795
+ export type JobWageDeterminationScheduledTerminationParameters = {
7796
+ /**
7797
+ * When the determination stops being valid, as a calendar date (`YYYY-MM-DD`); a value carrying a time component is refused with `422` rather than truncated. Segments beyond it are dropped and one spanning it is truncated. Must fall after the determination's genesis and on or before its current end. A determination holds at most one scheduled termination; cancel the standing one before scheduling another.
7798
+ */
7799
+ effective_date: string;
7800
+ };
7655
7801
  /**
7656
7802
  * The adjustment applied when a rule matches — an addition to the wage or fringe rate.
7657
7803
  */
@@ -7882,9 +8028,9 @@ export type AssetsItemResponseObject = {
7882
8028
  */
7883
8029
  serial_number: string | null;
7884
8030
  /**
7885
- * Lifecycle status of the item: one of available, assigned, or retired.
8031
+ * Placement status of the item: available, or assigned when held by a user.
7886
8032
  */
7887
- status: 'available' | 'assigned' | 'retired' | null;
8033
+ status: 'available' | 'assigned' | null;
7888
8034
  /**
7889
8035
  * When the item was purchased (ISO 8601).
7890
8036
  */
@@ -7939,6 +8085,10 @@ export type AssetsItemResponseObject = {
7939
8085
  * Images attached to the item; each carries a download url for its file.
7940
8086
  */
7941
8087
  images: Array<AssetsAttachmentResponseObject>;
8088
+ /**
8089
+ * When the item was archived (ISO 8601); null while active. An archived item is hidden from listings by default (see filter[state]) and read-only, with its location and history preserved; unarchiving restores it as it was.
8090
+ */
8091
+ archived_at: string | null;
7942
8092
  /**
7943
8093
  * When the record was created (ISO 8601).
7944
8094
  */
@@ -7969,9 +8119,9 @@ export type AssetsItemParameters = {
7969
8119
  */
7970
8120
  serial_number: string;
7971
8121
  /**
7972
- * Lifecycle status of the item: one of available, assigned, or retired.
8122
+ * Placement status of the item: available, or assigned when held by a user.
7973
8123
  */
7974
- status?: 'available' | 'assigned' | 'retired';
8124
+ status?: 'available' | 'assigned';
7975
8125
  /**
7976
8126
  * When the item was purchased (ISO 8601).
7977
8127
  */
@@ -8004,6 +8154,10 @@ export type AssetsItemParameters = {
8004
8154
  * Optional, create only. Place the new item inside this container item. Mutually exclusive with assets_site_id and user_id.
8005
8155
  */
8006
8156
  container_item_id?: string;
8157
+ /**
8158
+ * Optional, create only. The storage location within the placement site or container the item lands in; must belong to that holder. Omit for an unbinned placement. Ignored for a user assignment.
8159
+ */
8160
+ assets_sub_location_id?: string;
8007
8161
  /**
8008
8162
  * ID of the user this write is performed on behalf of — recorded as the item's creator or updater and attributed to any placement. Required; must belong to your company.
8009
8163
  */
@@ -8286,7 +8440,7 @@ export type AssetsAttachmentParameters = {
8286
8440
  */
8287
8441
  id?: string;
8288
8442
  /**
8289
- * A signed_id from POST /api/v1/direct_uploads identifying the uploaded blob to attach.
8443
+ * A signed_id from POST /api/v1/direct_uploads identifying the uploaded blob to attach. Register the upload naming the resource of the endpoint you are calling — `assets.items` for item images, `assets.products` for product images, `assets.items.service_events` for service event attachments — because a signed_id issued for any other resource will not resolve here.
8290
8444
  */
8291
8445
  file?: string;
8292
8446
  /**
@@ -8361,7 +8515,7 @@ export type AssetsDocumentResponseObject = {
8361
8515
  */
8362
8516
  export type AssetsDocumentParameters = {
8363
8517
  /**
8364
- * A signed_id from POST /api/v1/direct_uploads identifying the uploaded blob to attach.
8518
+ * 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.
8365
8519
  */
8366
8520
  file: string;
8367
8521
  /**
@@ -8520,7 +8674,7 @@ export type AssetsItemFormAssignmentParameters = {
8520
8674
  };
8521
8675
  };
8522
8676
  /**
8523
- * On-hand stock of an item at a site — one row per item and site. Read-only. A site with none of the item has no row at all, since a row is removed once its count reaches zero.
8677
+ * On-hand stock of an item at a site — one row per item, site, and storage location. Read-only. A site with none of the item has no row at all, since a row is removed once its count reaches zero.
8524
8678
  */
8525
8679
  export type AssetsInventoryResponseObject = {
8526
8680
  /**
@@ -8535,6 +8689,10 @@ export type AssetsInventoryResponseObject = {
8535
8689
  * ID of the site holding the stock.
8536
8690
  */
8537
8691
  assets_site_id: string;
8692
+ /**
8693
+ * ID of the storage location within the site this row's stock sits in; null for the site's unbinned stock. Each storage location keeps its own row.
8694
+ */
8695
+ assets_sub_location_id: string | null;
8538
8696
  /**
8539
8697
  * ID of the company that owns this record.
8540
8698
  */
@@ -8637,6 +8795,10 @@ export type AssetsTransactionEventResponseObject = {
8637
8795
  * ID of the container item the movement was into or out of; null when the endpoint was a site or user.
8638
8796
  */
8639
8797
  container_item_id: string | null;
8798
+ /**
8799
+ * ID of the storage location within the site or container the movement touched; null for an unbinned movement or a custody change.
8800
+ */
8801
+ assets_sub_location_id: string | null;
8640
8802
  /**
8641
8803
  * ID of the transfer that produced this transaction; null unless kind is transfer.
8642
8804
  */
@@ -8951,6 +9113,113 @@ export type AssetsServiceScheduleTemplateParameters = {
8951
9113
  */
8952
9114
  performed_by_user_id: string;
8953
9115
  };
9116
+ /**
9117
+ * A node of fixed storage structure inside a site or a container item — a zone, aisle, rack, shelf, bin, or drawer. Nodes form a tree per holder, and each carries a scannable path_code composed from its ancestors' codes.
9118
+ */
9119
+ export type AssetsSubLocationResponseObject = {
9120
+ /**
9121
+ * Unique identifier.
9122
+ */
9123
+ id: string;
9124
+ /**
9125
+ * ID of the company that owns this record.
9126
+ */
9127
+ company_id: string;
9128
+ /**
9129
+ * ID of the site this location belongs to; null when it belongs to a container item. Exactly one of the two is set, inherited from the parent for nested nodes.
9130
+ */
9131
+ assets_site_id: string | null;
9132
+ /**
9133
+ * ID of the container item this location belongs to; null when it belongs to a site. Exactly one of the two is set, inherited from the parent for nested nodes.
9134
+ */
9135
+ container_item_id: string | null;
9136
+ /**
9137
+ * ID of the enclosing location; null for a top-level node of its holder.
9138
+ */
9139
+ parent_id: string | null;
9140
+ /**
9141
+ * Advisory level label for the node: zone, aisle, rack, shelf, bin, or drawer. Drives display icons only; any nesting order is allowed.
9142
+ */
9143
+ kind: 'zone' | 'aisle' | 'rack' | 'shelf' | 'bin' | 'drawer' | null;
9144
+ /**
9145
+ * Display name for the location, unique among its siblings (for example "Aisle A").
9146
+ */
9147
+ name: string;
9148
+ /**
9149
+ * This node's own segment of the path code (for example "A" or "01"); unique among its siblings and free of the "-" separator.
9150
+ */
9151
+ code: string;
9152
+ /**
9153
+ * The scannable full code — the node's ancestors' codes and its own, joined by "-" (for example "A-01-03"). Recomputed through the subtree when a code changes; unique within the holder.
9154
+ */
9155
+ path_code: string;
9156
+ /**
9157
+ * When the record was created (ISO 8601).
9158
+ */
9159
+ created_at: string;
9160
+ /**
9161
+ * When the record was last updated (ISO 8601).
9162
+ */
9163
+ updated_at: string;
9164
+ };
9165
+ /**
9166
+ * Create a storage location. name and code are required. A top-level node names its holder (assets_site_id or container_item_id, exactly one); a nested node names parent_id and inherits the parent's holder. The holder cannot change after creation.
9167
+ */
9168
+ export type AssetsSubLocationParameters = {
9169
+ /**
9170
+ * ID of the site the location belongs to. Top-level nodes only — exactly one of assets_site_id or container_item_id; nested nodes inherit the parent's holder.
9171
+ */
9172
+ assets_site_id?: string;
9173
+ /**
9174
+ * ID of the container item the location belongs to. Top-level nodes only — exactly one of assets_site_id or container_item_id; the container's product must be flagged as a container.
9175
+ */
9176
+ container_item_id?: string;
9177
+ /**
9178
+ * ID of the enclosing location for a nested node; omit for a top-level node.
9179
+ */
9180
+ parent_id?: string | null;
9181
+ /**
9182
+ * Advisory level label for the node: zone, aisle, rack, shelf, bin, or drawer.
9183
+ */
9184
+ kind?: 'zone' | 'aisle' | 'rack' | 'shelf' | 'bin' | 'drawer';
9185
+ /**
9186
+ * Display name for the location, unique among its siblings.
9187
+ */
9188
+ name: string;
9189
+ /**
9190
+ * This node's own path-code segment; unique among its siblings and free of the "-" separator.
9191
+ */
9192
+ code: string;
9193
+ };
9194
+ /**
9195
+ * Update a storage location. All fields are optional — send only what changes. The holder fields cannot change after creation; renaming code cascades new path codes through the node's subtree.
9196
+ */
9197
+ export type AssetsSubLocationUpdateParameters = {
9198
+ /**
9199
+ * ID of the site the location belongs to. Top-level nodes only — exactly one of assets_site_id or container_item_id; nested nodes inherit the parent's holder.
9200
+ */
9201
+ assets_site_id?: string;
9202
+ /**
9203
+ * ID of the container item the location belongs to. Top-level nodes only — exactly one of assets_site_id or container_item_id; the container's product must be flagged as a container.
9204
+ */
9205
+ container_item_id?: string;
9206
+ /**
9207
+ * ID of the enclosing location for a nested node; omit for a top-level node.
9208
+ */
9209
+ parent_id?: string | null;
9210
+ /**
9211
+ * Advisory level label for the node: zone, aisle, rack, shelf, bin, or drawer.
9212
+ */
9213
+ kind?: 'zone' | 'aisle' | 'rack' | 'shelf' | 'bin' | 'drawer';
9214
+ /**
9215
+ * Display name for the location, unique among its siblings.
9216
+ */
9217
+ name?: string;
9218
+ /**
9219
+ * This node's own path-code segment; unique among its siblings and free of the "-" separator.
9220
+ */
9221
+ code?: string;
9222
+ };
8954
9223
  /**
8955
9224
  * A completed movement of item stock between two holders, each a site, a user, or a container. Each line moves one item; applying the transfer records paired outbound and inbound transactions and updates the on-hand, custody, and containment counts. Transfers created through this API are always completed. One-sided moves (placing or removing an item with only one endpoint) record transactions but no transfer, and so are not represented by this resource.
8956
9225
  */
@@ -8991,6 +9260,14 @@ export type AssetsTransferResponseObject = {
8991
9260
  * ID of the destination container item; null when the destination is a site or user.
8992
9261
  */
8993
9262
  to_container_item_id: string | null;
9263
+ /**
9264
+ * ID of the storage location within the source site or container the stock drew from; null for an unbinned source or a user source.
9265
+ */
9266
+ from_assets_sub_location_id: string | null;
9267
+ /**
9268
+ * ID of the storage location within the destination site or container the stock landed in; null for an unbinned destination or a user destination.
9269
+ */
9270
+ to_assets_sub_location_id: string | null;
8994
9271
  /**
8995
9272
  * ID of the user the transfer was performed on behalf of.
8996
9273
  */
@@ -9053,6 +9330,14 @@ export type AssetsTransferParameters = {
9053
9330
  * ID of the destination container item. At most one destination endpoint (site, user, or container).
9054
9331
  */
9055
9332
  to_container_item_id?: string;
9333
+ /**
9334
+ * Optional. The storage location within the source site or container the stock draws from; must belong to that endpoint. Omit for the source's unbinned stock.
9335
+ */
9336
+ from_assets_sub_location_id?: string;
9337
+ /**
9338
+ * Optional. The storage location within the destination site or container the stock lands in; must belong to that endpoint. Omit for an unbinned destination.
9339
+ */
9340
+ to_assets_sub_location_id?: string;
9056
9341
  /**
9057
9342
  * ID of the user this move is performed on behalf of, recorded as its initiator. Required; must belong to your company.
9058
9343
  */
@@ -9079,6 +9364,10 @@ export type AssetsRestockParameters = {
9079
9364
  * ID of the site to add the stock to.
9080
9365
  */
9081
9366
  assets_site_id: string;
9367
+ /**
9368
+ * Optional. The site's storage location the stock lands in; must belong to the site. Omit for the site's unbinned stock.
9369
+ */
9370
+ assets_sub_location_id?: string;
9082
9371
  /**
9083
9372
  * Number of units to add; greater than 0.
9084
9373
  */
@@ -9096,6 +9385,10 @@ export type AssetsAdjustmentParameters = {
9096
9385
  * ID of the site whose on-hand count is being set.
9097
9386
  */
9098
9387
  assets_site_id: string;
9388
+ /**
9389
+ * Optional. The site's storage location whose count is being set; must belong to the site. Omit to set the site's unbinned count.
9390
+ */
9391
+ assets_sub_location_id?: string;
9099
9392
  /**
9100
9393
  * The corrected on-hand count for the site; 0 or greater. The difference from the current count is recorded as the adjustment.
9101
9394
  */
@@ -9106,11 +9399,11 @@ export type AssetsAdjustmentParameters = {
9106
9399
  performed_by_user_id: string;
9107
9400
  };
9108
9401
  /**
9109
- * Retire an item, taking it out of service. A serial item is removed from its site or user (recording the removal) and marked retired; a bulk item is flagged retired without changing its stock. Delete this resource to un-retire.
9402
+ * Archive or unarchive a product or item. Archiving takes it out of circulation without deleting it — history is preserved and it is hidden from listings unless requested with filter[state]. Archiving a product cascades to its items; item operations apply to serial items only.
9110
9403
  */
9111
- export type AssetsRetirementParameters = {
9404
+ export type AssetsArchiveParameters = {
9112
9405
  /**
9113
- * ID of the user this retirement is performed on behalf of, recorded on any resulting transaction. Required; must belong to your company.
9406
+ * ID of the user this archive or unarchive is performed on behalf of, recorded for auditing. Required; must belong to your company.
9114
9407
  */
9115
9408
  performed_by_user_id: string;
9116
9409
  };
@@ -9125,7 +9418,7 @@ export type ListApiKeyScopesResponses = {
9125
9418
  * Success
9126
9419
  */
9127
9420
  200: {
9128
- data?: Array<ApiKeyScopeResponseObject>;
9421
+ data: Array<ApiKeyScopeResponseObject>;
9129
9422
  };
9130
9423
  };
9131
9424
  export type ListApiKeyScopesResponse = ListApiKeyScopesResponses[keyof ListApiKeyScopesResponses];
@@ -9195,9 +9488,9 @@ export type ListApprenticesResponses = {
9195
9488
  * Success
9196
9489
  */
9197
9490
  200: {
9198
- meta?: Meta;
9199
- links?: Links;
9200
- data?: Array<ApprenticeshipApprenticeResponseObject>;
9491
+ meta: Meta;
9492
+ links: Links;
9493
+ data: Array<ApprenticeshipApprenticeResponseObject>;
9201
9494
  };
9202
9495
  };
9203
9496
  export type ListApprenticesResponse = ListApprenticesResponses[keyof ListApprenticesResponses];
@@ -9280,9 +9573,9 @@ export type ListOccupationsResponses = {
9280
9573
  * Success
9281
9574
  */
9282
9575
  200: {
9283
- meta?: Meta;
9284
- links?: Links;
9285
- data?: Array<ApprenticeshipOccupationResponseObject>;
9576
+ meta: Meta;
9577
+ links: Links;
9578
+ data: Array<ApprenticeshipOccupationResponseObject>;
9286
9579
  };
9287
9580
  };
9288
9581
  export type ListOccupationsResponse = ListOccupationsResponses[keyof ListOccupationsResponses];
@@ -9388,9 +9681,9 @@ export type ListEmployersResponses = {
9388
9681
  * Success
9389
9682
  */
9390
9683
  200: {
9391
- meta?: Meta;
9392
- links?: Links;
9393
- data?: Array<ApprenticeshipProgramEmployerResponseObject>;
9684
+ meta: Meta;
9685
+ links: Links;
9686
+ data: Array<ApprenticeshipProgramEmployerResponseObject>;
9394
9687
  };
9395
9688
  };
9396
9689
  export type ListEmployersResponse = ListEmployersResponses[keyof ListEmployersResponses];
@@ -9517,9 +9810,9 @@ export type ListProgramsResponses = {
9517
9810
  * Success
9518
9811
  */
9519
9812
  200: {
9520
- meta?: Meta;
9521
- links?: Links;
9522
- data?: Array<ApprenticeshipProgramResponseObject>;
9813
+ meta: Meta;
9814
+ links: Links;
9815
+ data: Array<ApprenticeshipProgramResponseObject>;
9523
9816
  };
9524
9817
  };
9525
9818
  export type ListProgramsResponse = ListProgramsResponses[keyof ListProgramsResponses];
@@ -9622,9 +9915,9 @@ export type ListPeriodsResponses = {
9622
9915
  * Success
9623
9916
  */
9624
9917
  200: {
9625
- meta?: Meta;
9626
- links?: Links;
9627
- data?: Array<ApprenticeshipWageSchedulePeriodResponseObject>;
9918
+ meta: Meta;
9919
+ links: Links;
9920
+ data: Array<ApprenticeshipWageSchedulePeriodResponseObject>;
9628
9921
  };
9629
9922
  };
9630
9923
  export type ListPeriodsResponse = ListPeriodsResponses[keyof ListPeriodsResponses];
@@ -9730,9 +10023,9 @@ export type ListWageSchedulesResponses = {
9730
10023
  * Success
9731
10024
  */
9732
10025
  200: {
9733
- meta?: Meta;
9734
- links?: Links;
9735
- data?: Array<ApprenticeshipWageScheduleResponseObject>;
10026
+ meta: Meta;
10027
+ links: Links;
10028
+ data: Array<ApprenticeshipWageScheduleResponseObject>;
9736
10029
  };
9737
10030
  };
9738
10031
  export type ListWageSchedulesResponse = ListWageSchedulesResponses[keyof ListWageSchedulesResponses];
@@ -9842,9 +10135,9 @@ export type ListAttributesResponses = {
9842
10135
  * Success
9843
10136
  */
9844
10137
  200: {
9845
- meta?: Meta;
9846
- links?: Links;
9847
- data?: Array<AssetsAttributeResponseObject>;
10138
+ meta: Meta;
10139
+ links: Links;
10140
+ data: Array<AssetsAttributeResponseObject>;
9848
10141
  };
9849
10142
  };
9850
10143
  export type ListAttributesResponse = ListAttributesResponses[keyof ListAttributesResponses];
@@ -10001,9 +10294,9 @@ export type ListCategoriesResponses = {
10001
10294
  * Success
10002
10295
  */
10003
10296
  200: {
10004
- meta?: Meta;
10005
- links?: Links;
10006
- data?: Array<AssetsCategoryResponseObject>;
10297
+ meta: Meta;
10298
+ links: Links;
10299
+ data: Array<AssetsCategoryResponseObject>;
10007
10300
  };
10008
10301
  };
10009
10302
  export type ListCategoriesResponse = ListCategoriesResponses[keyof ListCategoriesResponses];
@@ -10144,9 +10437,9 @@ export type ListCustodiesResponses = {
10144
10437
  * Success
10145
10438
  */
10146
10439
  200: {
10147
- meta?: Meta;
10148
- links?: Links;
10149
- data?: Array<AssetsCustodyResponseObject>;
10440
+ meta: Meta;
10441
+ links: Links;
10442
+ data: Array<AssetsCustodyResponseObject>;
10150
10443
  };
10151
10444
  };
10152
10445
  export type ListCustodiesResponse = ListCustodiesResponses[keyof ListCustodiesResponses];
@@ -10199,9 +10492,9 @@ export type ListEventsResponses = {
10199
10492
  * Success
10200
10493
  */
10201
10494
  200: {
10202
- meta?: Meta;
10203
- links?: Links;
10204
- data?: Array<AssetsItemEventResponseObject>;
10495
+ meta: Meta;
10496
+ links: Links;
10497
+ data: Array<AssetsItemEventResponseObject>;
10205
10498
  };
10206
10499
  };
10207
10500
  export type ListEventsResponse = ListEventsResponses[keyof ListEventsResponses];
@@ -10273,9 +10566,9 @@ export type ListFormAssignmentTriggersResponses = {
10273
10566
  * Success
10274
10567
  */
10275
10568
  200: {
10276
- meta?: Meta;
10277
- links?: Links;
10278
- data?: Array<AssetsFormAssignmentTriggerResponseObject>;
10569
+ meta: Meta;
10570
+ links: Links;
10571
+ data: Array<AssetsFormAssignmentTriggerResponseObject>;
10279
10572
  };
10280
10573
  };
10281
10574
  export type ListFormAssignmentTriggersResponse = ListFormAssignmentTriggersResponses[keyof ListFormAssignmentTriggersResponses];
@@ -10400,9 +10693,9 @@ export type ListInventoriesResponses = {
10400
10693
  * Success
10401
10694
  */
10402
10695
  200: {
10403
- meta?: Meta;
10404
- links?: Links;
10405
- data?: Array<AssetsInventoryResponseObject>;
10696
+ meta: Meta;
10697
+ links: Links;
10698
+ data: Array<AssetsInventoryResponseObject>;
10406
10699
  };
10407
10700
  };
10408
10701
  export type ListInventoriesResponse = ListInventoriesResponses[keyof ListInventoriesResponses];
@@ -10464,6 +10757,10 @@ export type ListItemsData = {
10464
10757
  * Filter by service state
10465
10758
  */
10466
10759
  'filter[service]'?: string;
10760
+ /**
10761
+ * Filter by lifecycle state (defaults to 'active', hiding archived items)
10762
+ */
10763
+ 'filter[state]'?: string;
10467
10764
  filter?: string;
10468
10765
  'filter[unexpected]'?: string;
10469
10766
  };
@@ -10489,9 +10786,9 @@ export type ListItemsResponses = {
10489
10786
  * Success
10490
10787
  */
10491
10788
  200: {
10492
- meta?: Meta;
10493
- links?: Links;
10494
- data?: Array<AssetsItemResponseObject>;
10789
+ meta: Meta;
10790
+ links: Links;
10791
+ data: Array<AssetsItemResponseObject>;
10495
10792
  };
10496
10793
  };
10497
10794
  export type ListItemsResponse = ListItemsResponses[keyof ListItemsResponses];
@@ -10506,6 +10803,10 @@ export type CreateItemErrors = {
10506
10803
  * Forbidden
10507
10804
  */
10508
10805
  403: Problem;
10806
+ /**
10807
+ * Not Found
10808
+ */
10809
+ 404: Problem;
10509
10810
  /**
10510
10811
  * Unprocessable Content (conflicting placement)
10511
10812
  */
@@ -10585,50 +10886,62 @@ export type UpdateItemResponses = {
10585
10886
  200: AssetsItemResponseObject;
10586
10887
  };
10587
10888
  export type UpdateItemResponse = UpdateItemResponses[keyof UpdateItemResponses];
10588
- export type UnretireItemData = {
10589
- body?: never;
10889
+ export type UnarchiveItemData = {
10890
+ body: AssetsArchiveParameters;
10590
10891
  path: {
10591
10892
  item_id: string;
10592
10893
  };
10593
10894
  query?: never;
10594
- url: '/api/v1/assets/items/{item_id}/retirement';
10895
+ url: '/api/v1/assets/items/{item_id}/archive';
10595
10896
  };
10596
- export type UnretireItemErrors = {
10897
+ export type UnarchiveItemErrors = {
10898
+ /**
10899
+ * Bad Request (missing performed_by_user_id)
10900
+ */
10901
+ 400: Problem;
10597
10902
  /**
10598
10903
  * Forbidden
10599
10904
  */
10600
10905
  403: Problem;
10906
+ /**
10907
+ * Conflict
10908
+ */
10909
+ 409: Problem;
10601
10910
  };
10602
- export type UnretireItemError = UnretireItemErrors[keyof UnretireItemErrors];
10603
- export type UnretireItemResponses = {
10911
+ export type UnarchiveItemError = UnarchiveItemErrors[keyof UnarchiveItemErrors];
10912
+ export type UnarchiveItemResponses = {
10604
10913
  /**
10605
10914
  * Success
10606
10915
  */
10607
10916
  200: AssetsItemResponseObject;
10608
10917
  };
10609
- export type UnretireItemResponse = UnretireItemResponses[keyof UnretireItemResponses];
10610
- export type RetireItemData = {
10611
- body: AssetsRetirementParameters;
10918
+ export type UnarchiveItemResponse = UnarchiveItemResponses[keyof UnarchiveItemResponses];
10919
+ export type ArchiveItemData = {
10920
+ body: AssetsArchiveParameters;
10612
10921
  path: {
10613
10922
  item_id: string;
10614
10923
  };
10615
10924
  query?: never;
10616
- url: '/api/v1/assets/items/{item_id}/retirement';
10925
+ url: '/api/v1/assets/items/{item_id}/archive';
10617
10926
  };
10618
- export type RetireItemErrors = {
10927
+ export type ArchiveItemErrors = {
10928
+ /**
10929
+ * Bad Request (missing performed_by_user_id)
10930
+ */
10931
+ 400: Problem;
10619
10932
  /**
10620
10933
  * Forbidden
10621
10934
  */
10622
10935
  403: Problem;
10623
10936
  };
10624
- export type RetireItemError = RetireItemErrors[keyof RetireItemErrors];
10625
- export type RetireItemResponses = {
10937
+ export type ArchiveItemError = ArchiveItemErrors[keyof ArchiveItemErrors];
10938
+ export type ArchiveItemResponses = {
10626
10939
  /**
10627
10940
  * Created
10628
10941
  */
10629
10942
  201: AssetsItemResponseObject;
10630
10943
  };
10631
- export type RetireItemResponse = RetireItemResponses[keyof RetireItemResponses];
10944
+ export type ArchiveItemResponse = ArchiveItemResponses[keyof ArchiveItemResponses];
10632
10945
  export type ListServiceSchedulesData = {
10633
10946
  body?: never;
10634
10947
  path: {
@@ -10675,9 +10988,9 @@ export type ListServiceSchedulesResponses = {
10675
10988
  * Success
10676
10989
  */
10677
10990
  200: {
10678
- meta?: Meta;
10679
- links?: Links;
10680
- data?: Array<AssetsServiceScheduleResponseObject>;
10991
+ meta: Meta;
10992
+ links: Links;
10993
+ data: Array<AssetsServiceScheduleResponseObject>;
10681
10994
  };
10682
10995
  };
10683
10996
  export type ListServiceSchedulesResponse = ListServiceSchedulesResponses[keyof ListServiceSchedulesResponses];
@@ -10833,10 +11146,10 @@ export type ListServiceEventsResponses = {
10833
11146
  * Success
10834
11147
  */
10835
11148
  200: {
10836
- meta?: Meta;
10837
- links?: Links;
10838
- data?: Array<AssetsServiceEventFullResponseObject>;
10839
- };
11149
+ meta: Meta;
11150
+ links: Links;
11151
+ data: Array<AssetsServiceEventFullResponseObject>;
11152
+ };
10840
11153
  };
10841
11154
  export type ListServiceEventsResponse = ListServiceEventsResponses[keyof ListServiceEventsResponses];
10842
11155
  export type CreateServiceEventData = {
@@ -10973,9 +11286,9 @@ export type ListFormAssignmentTasksResponses = {
10973
11286
  * Success
10974
11287
  */
10975
11288
  200: {
10976
- meta?: Meta;
10977
- links?: Links;
10978
- data?: Array<AssetsItemFormAssignmentResponseObject>;
11289
+ meta: Meta;
11290
+ links: Links;
11291
+ data: Array<AssetsItemFormAssignmentResponseObject>;
10979
11292
  };
10980
11293
  };
10981
11294
  export type ListFormAssignmentTasksResponse = ListFormAssignmentTasksResponses[keyof ListFormAssignmentTasksResponses];
@@ -11096,9 +11409,9 @@ export type ListDocumentsResponses = {
11096
11409
  * Success
11097
11410
  */
11098
11411
  200: {
11099
- meta?: Meta;
11100
- links?: Links;
11101
- data?: Array<AssetsDocumentResponseObject>;
11412
+ meta: Meta;
11413
+ links: Links;
11414
+ data: Array<AssetsDocumentResponseObject>;
11102
11415
  };
11103
11416
  };
11104
11417
  export type ListDocumentsResponse = ListDocumentsResponses[keyof ListDocumentsResponses];
@@ -11226,9 +11539,9 @@ export type ListVersionsResponses = {
11226
11539
  * Success
11227
11540
  */
11228
11541
  200: {
11229
- meta?: Meta;
11230
- links?: Links;
11231
- data?: Array<AssetsDocumentVersionResponseObject>;
11542
+ meta: Meta;
11543
+ links: Links;
11544
+ data: Array<AssetsDocumentVersionResponseObject>;
11232
11545
  };
11233
11546
  };
11234
11547
  export type ListVersionsResponse = ListVersionsResponses[keyof ListVersionsResponses];
@@ -11240,6 +11553,14 @@ export type ListProductsData = {
11240
11553
  * Filter by asset category
11241
11554
  */
11242
11555
  'filter[assets_category_id]'?: string;
11556
+ /**
11557
+ * Filter by lifecycle state (defaults to 'active', hiding archived products):
11558
+ * * `active`
11559
+ * * `archived`
11560
+ * * `all`
11561
+ *
11562
+ */
11563
+ 'filter[state]'?: string;
11243
11564
  'filter[created_at][gte]'?: string;
11244
11565
  'filter[created_at][lte]'?: string;
11245
11566
  'filter[updated_at][gte]'?: string;
@@ -11279,9 +11600,9 @@ export type ListProductsResponses = {
11279
11600
  * Success
11280
11601
  */
11281
11602
  200: {
11282
- meta?: Meta;
11283
- links?: Links;
11284
- data?: Array<AssetsProductResponseObject>;
11603
+ meta: Meta;
11604
+ links: Links;
11605
+ data: Array<AssetsProductResponseObject>;
11285
11606
  };
11286
11607
  };
11287
11608
  export type ListProductsResponse = ListProductsResponses[keyof ListProductsResponses];
@@ -11391,6 +11712,58 @@ export type UpdateProductResponses = {
11391
11712
  200: AssetsProductResponseObject;
11392
11713
  };
11393
11714
  export type UpdateProductResponse = UpdateProductResponses[keyof UpdateProductResponses];
11715
+ export type UnarchiveProductData = {
11716
+ body: AssetsArchiveParameters;
11717
+ path: {
11718
+ product_id: string;
11719
+ };
11720
+ query?: never;
11721
+ url: '/api/v1/assets/products/{product_id}/archive';
11722
+ };
11723
+ export type UnarchiveProductErrors = {
11724
+ /**
11725
+ * Bad Request (missing performed_by_user_id)
11726
+ */
11727
+ 400: Problem;
11728
+ /**
11729
+ * Forbidden
11730
+ */
11731
+ 403: Problem;
11732
+ };
11733
+ export type UnarchiveProductError = UnarchiveProductErrors[keyof UnarchiveProductErrors];
11734
+ export type UnarchiveProductResponses = {
11735
+ /**
11736
+ * Success
11737
+ */
11738
+ 200: AssetsProductResponseObject;
11739
+ };
11740
+ export type UnarchiveProductResponse = UnarchiveProductResponses[keyof UnarchiveProductResponses];
11741
+ export type ArchiveProductData = {
11742
+ body: AssetsArchiveParameters;
11743
+ path: {
11744
+ product_id: string;
11745
+ };
11746
+ query?: never;
11747
+ url: '/api/v1/assets/products/{product_id}/archive';
11748
+ };
11749
+ export type ArchiveProductErrors = {
11750
+ /**
11751
+ * Bad Request (missing performed_by_user_id)
11752
+ */
11753
+ 400: Problem;
11754
+ /**
11755
+ * Forbidden
11756
+ */
11757
+ 403: Problem;
11758
+ };
11759
+ export type ArchiveProductError = ArchiveProductErrors[keyof ArchiveProductErrors];
11760
+ export type ArchiveProductResponses = {
11761
+ /**
11762
+ * Created
11763
+ */
11764
+ 201: AssetsProductResponseObject;
11765
+ };
11766
+ export type ArchiveProductResponse = ArchiveProductResponses[keyof ArchiveProductResponses];
11394
11767
  export type AdjustProductInventoryData = {
11395
11768
  body: AssetsAdjustmentParameters;
11396
11769
  path: {
@@ -11404,6 +11777,10 @@ export type AdjustProductInventoryErrors = {
11404
11777
  * Forbidden
11405
11778
  */
11406
11779
  403: Problem;
11780
+ /**
11781
+ * Not Found
11782
+ */
11783
+ 404: Problem;
11407
11784
  };
11408
11785
  export type AdjustProductInventoryError = AdjustProductInventoryErrors[keyof AdjustProductInventoryErrors];
11409
11786
  export type AdjustProductInventoryResponses = {
@@ -11426,6 +11803,10 @@ export type RestockProductErrors = {
11426
11803
  * Forbidden
11427
11804
  */
11428
11805
  403: Problem;
11806
+ /**
11807
+ * Not Found
11808
+ */
11809
+ 404: Problem;
11429
11810
  };
11430
11811
  export type RestockProductError = RestockProductErrors[keyof RestockProductErrors];
11431
11812
  export type RestockProductResponses = {
@@ -11473,9 +11854,9 @@ export type ListServiceScheduleTemplatesResponses = {
11473
11854
  * Success
11474
11855
  */
11475
11856
  200: {
11476
- meta?: Meta;
11477
- links?: Links;
11478
- data?: Array<AssetsServiceScheduleTemplateResponseObject>;
11857
+ meta: Meta;
11858
+ links: Links;
11859
+ data: Array<AssetsServiceScheduleTemplateResponseObject>;
11479
11860
  };
11480
11861
  };
11481
11862
  export type ListServiceScheduleTemplatesResponse = ListServiceScheduleTemplatesResponses[keyof ListServiceScheduleTemplatesResponses];
@@ -11691,9 +12072,9 @@ export type ListAssetsSitesResponses = {
11691
12072
  * Success
11692
12073
  */
11693
12074
  200: {
11694
- meta?: Meta;
11695
- links?: Links;
11696
- data?: Array<AssetsSiteResponseObject>;
12075
+ meta: Meta;
12076
+ links: Links;
12077
+ data: Array<AssetsSiteResponseObject>;
11697
12078
  };
11698
12079
  };
11699
12080
  export type ListAssetsSitesResponse = ListAssetsSitesResponses[keyof ListAssetsSitesResponses];
@@ -11795,6 +12176,178 @@ export type UpdateSiteResponses = {
11795
12176
  200: AssetsSiteResponseObject;
11796
12177
  };
11797
12178
  export type UpdateSiteResponse = UpdateSiteResponses[keyof UpdateSiteResponses];
12179
+ export type ListSubLocationsData = {
12180
+ body?: never;
12181
+ path?: never;
12182
+ query?: {
12183
+ 'filter[assets_site_id]'?: string;
12184
+ 'filter[container_item_id]'?: string;
12185
+ /**
12186
+ * :
12187
+ * * `zone`
12188
+ * * `aisle`
12189
+ * * `rack`
12190
+ * * `shelf`
12191
+ * * `bin`
12192
+ * * `drawer`
12193
+ *
12194
+ */
12195
+ 'filter[kind]'?: string;
12196
+ 'filter[created_at][gte]'?: string;
12197
+ 'filter[created_at][lte]'?: string;
12198
+ 'filter[updated_at][gte]'?: string;
12199
+ 'filter[updated_at][lte]'?: string;
12200
+ filter?: string;
12201
+ 'filter[unexpected]'?: string;
12202
+ /**
12203
+ * This pagination cursor corresponds to the cursor value found in the response in
12204
+ * `meta.page.next_cursor`.
12205
+ */
12206
+ 'page[cursor]'?: string;
12207
+ /**
12208
+ * 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`.
12209
+ */
12210
+ 'page[limit]'?: number;
12211
+ page?: string;
12212
+ };
12213
+ url: '/api/v1/assets/sub_locations';
12214
+ };
12215
+ export type ListSubLocationsErrors = {
12216
+ /**
12217
+ * Bad Request
12218
+ */
12219
+ 400: Problem;
12220
+ /**
12221
+ * Forbidden
12222
+ */
12223
+ 403: Problem;
12224
+ /**
12225
+ * Unprocessable Content
12226
+ */
12227
+ 422: Problem;
12228
+ };
12229
+ export type ListSubLocationsError = ListSubLocationsErrors[keyof ListSubLocationsErrors];
12230
+ export type ListSubLocationsResponses = {
12231
+ /**
12232
+ * Success
12233
+ */
12234
+ 200: {
12235
+ meta: Meta;
12236
+ links: Links;
12237
+ data: Array<AssetsSubLocationResponseObject>;
12238
+ };
12239
+ };
12240
+ export type ListSubLocationsResponse = ListSubLocationsResponses[keyof ListSubLocationsResponses];
12241
+ export type CreateSubLocationData = {
12242
+ body?: AssetsSubLocationParameters;
12243
+ path?: never;
12244
+ query?: never;
12245
+ url: '/api/v1/assets/sub_locations';
12246
+ };
12247
+ export type CreateSubLocationErrors = {
12248
+ /**
12249
+ * Forbidden
12250
+ */
12251
+ 403: Problem;
12252
+ /**
12253
+ * Unprocessable Content
12254
+ */
12255
+ 422: Problem;
12256
+ };
12257
+ export type CreateSubLocationError = CreateSubLocationErrors[keyof CreateSubLocationErrors];
12258
+ export type CreateSubLocationResponses = {
12259
+ /**
12260
+ * Created
12261
+ */
12262
+ 201: AssetsSubLocationResponseObject;
12263
+ };
12264
+ export type CreateSubLocationResponse = CreateSubLocationResponses[keyof CreateSubLocationResponses];
12265
+ export type DeleteSubLocationData = {
12266
+ body?: never;
12267
+ path: {
12268
+ id: string;
12269
+ };
12270
+ query?: never;
12271
+ url: '/api/v1/assets/sub_locations/{id}';
12272
+ };
12273
+ export type DeleteSubLocationErrors = {
12274
+ /**
12275
+ * Forbidden
12276
+ */
12277
+ 403: Problem;
12278
+ /**
12279
+ * Not Found
12280
+ */
12281
+ 404: Problem;
12282
+ /**
12283
+ * Unprocessable Content
12284
+ */
12285
+ 422: Problem;
12286
+ };
12287
+ export type DeleteSubLocationError = DeleteSubLocationErrors[keyof DeleteSubLocationErrors];
12288
+ export type DeleteSubLocationResponses = {
12289
+ /**
12290
+ * Success
12291
+ */
12292
+ 200: AssetsSubLocationResponseObject;
12293
+ };
12294
+ export type DeleteSubLocationResponse = DeleteSubLocationResponses[keyof DeleteSubLocationResponses];
12295
+ export type GetSubLocationData = {
12296
+ body?: never;
12297
+ path: {
12298
+ id: string;
12299
+ };
12300
+ query?: never;
12301
+ url: '/api/v1/assets/sub_locations/{id}';
12302
+ };
12303
+ export type GetSubLocationErrors = {
12304
+ /**
12305
+ * Forbidden
12306
+ */
12307
+ 403: Problem;
12308
+ /**
12309
+ * Not Found
12310
+ */
12311
+ 404: Problem;
12312
+ };
12313
+ export type GetSubLocationError = GetSubLocationErrors[keyof GetSubLocationErrors];
12314
+ export type GetSubLocationResponses = {
12315
+ /**
12316
+ * Success
12317
+ */
12318
+ 200: AssetsSubLocationResponseObject;
12319
+ };
12320
+ export type GetSubLocationResponse = GetSubLocationResponses[keyof GetSubLocationResponses];
12321
+ export type UpdateSubLocationData = {
12322
+ body?: AssetsSubLocationUpdateParameters;
12323
+ path: {
12324
+ id: string;
12325
+ };
12326
+ query?: never;
12327
+ url: '/api/v1/assets/sub_locations/{id}';
12328
+ };
12329
+ export type UpdateSubLocationErrors = {
12330
+ /**
12331
+ * Forbidden
12332
+ */
12333
+ 403: Problem;
12334
+ /**
12335
+ * Not Found
12336
+ */
12337
+ 404: Problem;
12338
+ /**
12339
+ * Unprocessable Content
12340
+ */
12341
+ 422: Problem;
12342
+ };
12343
+ export type UpdateSubLocationError = UpdateSubLocationErrors[keyof UpdateSubLocationErrors];
12344
+ export type UpdateSubLocationResponses = {
12345
+ /**
12346
+ * Success
12347
+ */
12348
+ 200: AssetsSubLocationResponseObject;
12349
+ };
12350
+ export type UpdateSubLocationResponse = UpdateSubLocationResponses[keyof UpdateSubLocationResponses];
11798
12351
  export type ListTransfersData = {
11799
12352
  body?: never;
11800
12353
  path?: never;
@@ -11833,9 +12386,9 @@ export type ListTransfersResponses = {
11833
12386
  * Success
11834
12387
  */
11835
12388
  200: {
11836
- meta?: Meta;
11837
- links?: Links;
11838
- data?: Array<AssetsTransferResponseObject>;
12389
+ meta: Meta;
12390
+ links: Links;
12391
+ data: Array<AssetsTransferResponseObject>;
11839
12392
  };
11840
12393
  };
11841
12394
  export type ListTransfersResponse = ListTransfersResponses[keyof ListTransfersResponses];
@@ -11932,9 +12485,9 @@ export type ListVendorsResponses = {
11932
12485
  * Success
11933
12486
  */
11934
12487
  200: {
11935
- meta?: Meta;
11936
- links?: Links;
11937
- data?: Array<AssetsVendorResponseObject>;
12488
+ meta: Meta;
12489
+ links: Links;
12490
+ data: Array<AssetsVendorResponseObject>;
11938
12491
  };
11939
12492
  };
11940
12493
  export type ListVendorsResponse = ListVendorsResponses[keyof ListVendorsResponses];
@@ -12083,9 +12636,9 @@ export type ListFeaturesResponses = {
12083
12636
  * Success
12084
12637
  */
12085
12638
  200: {
12086
- meta?: Meta;
12087
- links?: Links;
12088
- data?: Array<FeatureResponseObject>;
12639
+ meta: Meta;
12640
+ links: Links;
12641
+ data: Array<FeatureResponseObject>;
12089
12642
  };
12090
12643
  };
12091
12644
  export type ListFeaturesResponse = ListFeaturesResponses[keyof ListFeaturesResponses];
@@ -12162,9 +12715,9 @@ export type ListAtlasSitesResponses = {
12162
12715
  * Success
12163
12716
  */
12164
12717
  200: {
12165
- meta?: Meta;
12166
- links?: Links;
12167
- data?: Array<SiteResponseObject>;
12718
+ meta: Meta;
12719
+ links: Links;
12720
+ data: Array<SiteResponseObject>;
12168
12721
  };
12169
12722
  };
12170
12723
  export type ListAtlasSitesResponse = ListAtlasSitesResponses[keyof ListAtlasSitesResponses];
@@ -12269,9 +12822,9 @@ export type ListPackagesResponses = {
12269
12822
  * Success
12270
12823
  */
12271
12824
  200: {
12272
- meta?: Meta;
12273
- links?: Links;
12274
- data?: Array<CertificationPackageResponseObject>;
12825
+ meta: Meta;
12826
+ links: Links;
12827
+ data: Array<CertificationPackageResponseObject>;
12275
12828
  };
12276
12829
  };
12277
12830
  export type ListPackagesResponse = ListPackagesResponses[keyof ListPackagesResponses];
@@ -12720,9 +13273,9 @@ export type ListDepartmentsResponses = {
12720
13273
  * Success
12721
13274
  */
12722
13275
  200: {
12723
- meta?: Meta;
12724
- links?: Links;
12725
- data?: Array<DepartmentResponseObject>;
13276
+ meta: Meta;
13277
+ links: Links;
13278
+ data: Array<DepartmentResponseObject>;
12726
13279
  };
12727
13280
  };
12728
13281
  export type ListDepartmentsResponse = ListDepartmentsResponses[keyof ListDepartmentsResponses];
@@ -12819,9 +13372,9 @@ export type ListCompaniesResponses = {
12819
13372
  * Success
12820
13373
  */
12821
13374
  200: {
12822
- meta?: Meta;
12823
- links?: Links;
12824
- data?: Array<CompanyResponseObject>;
13375
+ meta: Meta;
13376
+ links: Links;
13377
+ data: Array<CompanyResponseObject>;
12825
13378
  };
12826
13379
  };
12827
13380
  export type ListCompaniesResponse = ListCompaniesResponses[keyof ListCompaniesResponses];
@@ -12937,9 +13490,9 @@ export type ListChecksResponses = {
12937
13490
  * Success
12938
13491
  */
12939
13492
  200: {
12940
- meta?: Meta;
12941
- links?: Links;
12942
- data?: Array<ComplianceCheckResponseObject>;
13493
+ meta: Meta;
13494
+ links: Links;
13495
+ data: Array<ComplianceCheckResponseObject>;
12943
13496
  };
12944
13497
  };
12945
13498
  export type ListChecksResponse = ListChecksResponses[keyof ListChecksResponses];
@@ -13032,9 +13585,9 @@ export type ListCustomFieldConfigsResponses = {
13032
13585
  * Success
13033
13586
  */
13034
13587
  200: {
13035
- meta?: Meta;
13036
- links?: Links;
13037
- data?: Array<CustomFieldConfigsResponseObject>;
13588
+ meta: Meta;
13589
+ links: Links;
13590
+ data: Array<CustomFieldConfigsResponseObject>;
13038
13591
  };
13039
13592
  };
13040
13593
  export type ListCustomFieldConfigsResponse = ListCustomFieldConfigsResponses[keyof ListCustomFieldConfigsResponses];
@@ -13163,6 +13716,10 @@ export type CreateDirectUploadErrors = {
13163
13716
  * Forbidden
13164
13717
  */
13165
13718
  403: Problem;
13719
+ /**
13720
+ * Unprocessable Content
13721
+ */
13722
+ 422: Problem;
13166
13723
  };
13167
13724
  export type CreateDirectUploadError = CreateDirectUploadErrors[keyof CreateDirectUploadErrors];
13168
13725
  export type CreateDirectUploadResponses = {
@@ -13372,9 +13929,9 @@ export type ListGroupUsersResponses = {
13372
13929
  * Success
13373
13930
  */
13374
13931
  200: {
13375
- meta?: Meta;
13376
- links?: Links;
13377
- data?: Array<UserGroupResponse>;
13932
+ meta: Meta;
13933
+ links: Links;
13934
+ data: Array<UserGroupResponse>;
13378
13935
  };
13379
13936
  };
13380
13937
  export type ListGroupUsersResponse = ListGroupUsersResponses[keyof ListGroupUsersResponses];
@@ -13464,9 +14021,9 @@ export type ListGroupsResponses = {
13464
14021
  * Success
13465
14022
  */
13466
14023
  200: {
13467
- meta?: Meta;
13468
- links?: Links;
13469
- data?: Array<GroupResponseObject>;
14024
+ meta: Meta;
14025
+ links: Links;
14026
+ data: Array<GroupResponseObject>;
13470
14027
  };
13471
14028
  };
13472
14029
  export type ListGroupsResponse = ListGroupsResponses[keyof ListGroupsResponses];
@@ -13630,9 +14187,9 @@ export type ListJobScopePricesResponses = {
13630
14187
  * Success
13631
14188
  */
13632
14189
  200: {
13633
- meta?: Meta;
13634
- links?: Links;
13635
- data?: Array<ProductionJobScopePriceResponseObject>;
14190
+ meta: Meta;
14191
+ links: Links;
14192
+ data: Array<ProductionJobScopePriceResponseObject>;
13636
14193
  };
13637
14194
  };
13638
14195
  export type ListJobScopePricesResponse = ListJobScopePricesResponses[keyof ListJobScopePricesResponses];
@@ -13798,13 +14355,247 @@ export type ListRateRuleHistoryData = {
13798
14355
  query?: {
13799
14356
  'as_of[valid]'?: string;
13800
14357
  };
13801
- url: '/api/v1/jobs/{job_id}/wage_determinations/{wage_determination_id}/rate_rules/{rate_rule_id}/history';
14358
+ url: '/api/v1/jobs/{job_id}/wage_determinations/{wage_determination_id}/rate_rules/{rate_rule_id}/history';
14359
+ };
14360
+ export type ListRateRuleHistoryErrors = {
14361
+ /**
14362
+ * Bad Request
14363
+ */
14364
+ 400: Problem;
14365
+ /**
14366
+ * Forbidden
14367
+ */
14368
+ 403: Problem;
14369
+ /**
14370
+ * Not Found
14371
+ */
14372
+ 404: Problem;
14373
+ };
14374
+ export type ListRateRuleHistoryError = ListRateRuleHistoryErrors[keyof ListRateRuleHistoryErrors];
14375
+ export type ListRateRuleHistoryResponses = {
14376
+ /**
14377
+ * Success
14378
+ */
14379
+ 200: {
14380
+ meta: Meta;
14381
+ links: Links;
14382
+ data: Array<RateRuleHistoryVersionObject>;
14383
+ };
14384
+ };
14385
+ export type ListRateRuleHistoryResponse = ListRateRuleHistoryResponses[keyof ListRateRuleHistoryResponses];
14386
+ export type ListRateRulesData = {
14387
+ body?: never;
14388
+ path: {
14389
+ job_id: string;
14390
+ wage_determination_id: string;
14391
+ };
14392
+ query?: {
14393
+ /**
14394
+ * Read the version valid at this point in time. Defaults to now.
14395
+ */
14396
+ 'as_of[valid]'?: string;
14397
+ as_of?: string;
14398
+ 'as_of[bogus_axis]'?: string;
14399
+ 'as_of[valid][gte]'?: string;
14400
+ 'as_of[transaction]'?: string;
14401
+ };
14402
+ url: '/api/v1/jobs/{job_id}/wage_determinations/{wage_determination_id}/rate_rules';
14403
+ };
14404
+ export type ListRateRulesErrors = {
14405
+ /**
14406
+ * Bad Request
14407
+ */
14408
+ 400: Problem;
14409
+ /**
14410
+ * Forbidden
14411
+ */
14412
+ 403: Problem;
14413
+ /**
14414
+ * Unprocessable Content
14415
+ */
14416
+ 422: Problem;
14417
+ };
14418
+ export type ListRateRulesError = ListRateRulesErrors[keyof ListRateRulesErrors];
14419
+ export type ListRateRulesResponses = {
14420
+ /**
14421
+ * Success
14422
+ */
14423
+ 200: {
14424
+ meta: Meta;
14425
+ links: Links;
14426
+ data: Array<RateRuleResponseObject>;
14427
+ };
14428
+ };
14429
+ export type ListRateRulesResponse = ListRateRulesResponses[keyof ListRateRulesResponses];
14430
+ export type CreateRateRuleData = {
14431
+ body: RateRuleParameters;
14432
+ path: {
14433
+ job_id: string;
14434
+ wage_determination_id: string;
14435
+ };
14436
+ query?: never;
14437
+ url: '/api/v1/jobs/{job_id}/wage_determinations/{wage_determination_id}/rate_rules';
14438
+ };
14439
+ export type CreateRateRuleErrors = {
14440
+ /**
14441
+ * Forbidden
14442
+ */
14443
+ 403: Problem;
14444
+ /**
14445
+ * Unprocessable Content
14446
+ */
14447
+ 422: Problem;
14448
+ };
14449
+ export type CreateRateRuleError = CreateRateRuleErrors[keyof CreateRateRuleErrors];
14450
+ export type CreateRateRuleResponses = {
14451
+ /**
14452
+ * Created
14453
+ */
14454
+ 201: RateRuleResponseObject;
14455
+ };
14456
+ export type CreateRateRuleResponse = CreateRateRuleResponses[keyof CreateRateRuleResponses];
14457
+ export type GetRateRuleData = {
14458
+ body?: never;
14459
+ path: {
14460
+ job_id: string;
14461
+ wage_determination_id: string;
14462
+ id: string;
14463
+ };
14464
+ query?: {
14465
+ /**
14466
+ * Read the version valid at this point in time. Defaults to now.
14467
+ */
14468
+ 'as_of[valid]'?: string;
14469
+ };
14470
+ url: '/api/v1/jobs/{job_id}/wage_determinations/{wage_determination_id}/rate_rules/{id}';
14471
+ };
14472
+ export type GetRateRuleErrors = {
14473
+ /**
14474
+ * Forbidden
14475
+ */
14476
+ 403: Problem;
14477
+ /**
14478
+ * Not Found
14479
+ */
14480
+ 404: Problem;
14481
+ };
14482
+ export type GetRateRuleError = GetRateRuleErrors[keyof GetRateRuleErrors];
14483
+ export type GetRateRuleResponses = {
14484
+ /**
14485
+ * Success
14486
+ */
14487
+ 200: RateRuleResponseObject;
14488
+ };
14489
+ export type GetRateRuleResponse = GetRateRuleResponses[keyof GetRateRuleResponses];
14490
+ export type ShiftJobWageDeterminationGenesisData = {
14491
+ body: JobWageDeterminationGenesisParameters;
14492
+ headers: {
14493
+ /**
14494
+ * Version validator this write is composed against — the `ETag` from a read of this determination, or `*` to write against whatever exists. See "Version validators" in the API overview.
14495
+ */
14496
+ 'If-Match': string;
14497
+ };
14498
+ path: {
14499
+ job_id: string;
14500
+ wage_determination_id: string;
14501
+ };
14502
+ query?: never;
14503
+ url: '/api/v1/jobs/{job_id}/wage_determinations/{wage_determination_id}/genesis';
14504
+ };
14505
+ export type ShiftJobWageDeterminationGenesisErrors = {
14506
+ /**
14507
+ * Bad Request (missing effective_date)
14508
+ */
14509
+ 400: Problem;
14510
+ /**
14511
+ * Forbidden
14512
+ */
14513
+ 403: Problem;
14514
+ /**
14515
+ * Not Found
14516
+ */
14517
+ 404: Problem;
14518
+ /**
14519
+ * Conflict
14520
+ */
14521
+ 409: Problem;
14522
+ /**
14523
+ * Precondition Failed
14524
+ */
14525
+ 412: Problem;
14526
+ /**
14527
+ * Unprocessable Content
14528
+ */
14529
+ 422: Problem;
14530
+ /**
14531
+ * Precondition Required
14532
+ */
14533
+ 428: Problem;
14534
+ };
14535
+ export type ShiftJobWageDeterminationGenesisError = ShiftJobWageDeterminationGenesisErrors[keyof ShiftJobWageDeterminationGenesisErrors];
14536
+ export type ShiftJobWageDeterminationGenesisResponses = {
14537
+ /**
14538
+ * Success
14539
+ */
14540
+ 200: JobWageDeterminationResponseObject;
14541
+ };
14542
+ export type ShiftJobWageDeterminationGenesisResponse = ShiftJobWageDeterminationGenesisResponses[keyof ShiftJobWageDeterminationGenesisResponses];
14543
+ export type ListJobWageDeterminationHistoryData = {
14544
+ body?: never;
14545
+ path: {
14546
+ job_id: string;
14547
+ /**
14548
+ * The determination's version-stable identity, as returned in `id`.
14549
+ */
14550
+ wage_determination_id: string;
14551
+ };
14552
+ query?: {
14553
+ 'as_of[valid]'?: string;
14554
+ };
14555
+ url: '/api/v1/jobs/{job_id}/wage_determinations/{wage_determination_id}/history';
14556
+ };
14557
+ export type ListJobWageDeterminationHistoryErrors = {
14558
+ /**
14559
+ * Bad Request
14560
+ */
14561
+ 400: Problem;
14562
+ /**
14563
+ * Forbidden
14564
+ */
14565
+ 403: Problem;
14566
+ /**
14567
+ * Not Found
14568
+ */
14569
+ 404: Problem;
14570
+ };
14571
+ export type ListJobWageDeterminationHistoryError = ListJobWageDeterminationHistoryErrors[keyof ListJobWageDeterminationHistoryErrors];
14572
+ export type ListJobWageDeterminationHistoryResponses = {
14573
+ /**
14574
+ * Success
14575
+ */
14576
+ 200: {
14577
+ meta: Meta;
14578
+ links: Links;
14579
+ data: Array<JobWageDeterminationHistoryVersionObject>;
14580
+ };
14581
+ };
14582
+ export type ListJobWageDeterminationHistoryResponse = ListJobWageDeterminationHistoryResponses[keyof ListJobWageDeterminationHistoryResponses];
14583
+ export type CancelJobWageDeterminationScheduledChangesData = {
14584
+ body?: never;
14585
+ headers: {
14586
+ /**
14587
+ * Version validator this write is composed against — the `ETag` from a read of this determination, or `*` to write against whatever exists. See "Version validators" in the API overview.
14588
+ */
14589
+ 'If-Match': string;
14590
+ };
14591
+ path: {
14592
+ job_id: string;
14593
+ wage_determination_id: string;
14594
+ };
14595
+ query?: never;
14596
+ url: '/api/v1/jobs/{job_id}/wage_determinations/{wage_determination_id}/scheduled_changes';
13802
14597
  };
13803
- export type ListRateRuleHistoryErrors = {
13804
- /**
13805
- * Bad Request
13806
- */
13807
- 400: Problem;
14598
+ export type CancelJobWageDeterminationScheduledChangesErrors = {
13808
14599
  /**
13809
14600
  * Forbidden
13810
14601
  */
@@ -13813,106 +14604,123 @@ export type ListRateRuleHistoryErrors = {
13813
14604
  * Not Found
13814
14605
  */
13815
14606
  404: Problem;
14607
+ /**
14608
+ * Precondition Failed
14609
+ */
14610
+ 412: Problem;
14611
+ /**
14612
+ * Unprocessable Content
14613
+ */
14614
+ 422: Problem;
14615
+ /**
14616
+ * Precondition Required
14617
+ */
14618
+ 428: Problem;
13816
14619
  };
13817
- export type ListRateRuleHistoryError = ListRateRuleHistoryErrors[keyof ListRateRuleHistoryErrors];
13818
- export type ListRateRuleHistoryResponses = {
14620
+ export type CancelJobWageDeterminationScheduledChangesError = CancelJobWageDeterminationScheduledChangesErrors[keyof CancelJobWageDeterminationScheduledChangesErrors];
14621
+ export type CancelJobWageDeterminationScheduledChangesResponses = {
13819
14622
  /**
13820
14623
  * Success
13821
14624
  */
13822
- 200: {
13823
- meta?: Meta;
13824
- links?: Links;
13825
- data?: Array<RateRuleHistoryVersionObject>;
13826
- };
14625
+ 200: JobWageDeterminationResponseObject;
13827
14626
  };
13828
- export type ListRateRuleHistoryResponse = ListRateRuleHistoryResponses[keyof ListRateRuleHistoryResponses];
13829
- export type ListRateRulesData = {
14627
+ export type CancelJobWageDeterminationScheduledChangesResponse = CancelJobWageDeterminationScheduledChangesResponses[keyof CancelJobWageDeterminationScheduledChangesResponses];
14628
+ export type ListJobWageDeterminationScheduledChangesData = {
13830
14629
  body?: never;
13831
14630
  path: {
13832
14631
  job_id: string;
13833
14632
  wage_determination_id: string;
13834
14633
  };
13835
- query?: {
13836
- /**
13837
- * Read the version valid at this point in time. Defaults to now.
13838
- */
13839
- 'as_of[valid]'?: string;
13840
- as_of?: string;
13841
- 'as_of[bogus_axis]'?: string;
13842
- 'as_of[valid][gte]'?: string;
13843
- 'as_of[transaction]'?: string;
13844
- };
13845
- url: '/api/v1/jobs/{job_id}/wage_determinations/{wage_determination_id}/rate_rules';
14634
+ query?: never;
14635
+ url: '/api/v1/jobs/{job_id}/wage_determinations/{wage_determination_id}/scheduled_changes';
13846
14636
  };
13847
- export type ListRateRulesErrors = {
13848
- /**
13849
- * Bad Request
13850
- */
13851
- 400: Problem;
14637
+ export type ListJobWageDeterminationScheduledChangesErrors = {
13852
14638
  /**
13853
14639
  * Forbidden
13854
14640
  */
13855
14641
  403: Problem;
13856
14642
  /**
13857
- * Unprocessable Content
14643
+ * Not Found
13858
14644
  */
13859
- 422: Problem;
14645
+ 404: Problem;
13860
14646
  };
13861
- export type ListRateRulesError = ListRateRulesErrors[keyof ListRateRulesErrors];
13862
- export type ListRateRulesResponses = {
14647
+ export type ListJobWageDeterminationScheduledChangesError = ListJobWageDeterminationScheduledChangesErrors[keyof ListJobWageDeterminationScheduledChangesErrors];
14648
+ export type ListJobWageDeterminationScheduledChangesResponses = {
13863
14649
  /**
13864
- * Success
14650
+ * Success with scheduled changes
13865
14651
  */
13866
- 200: {
13867
- meta?: Meta;
13868
- links?: Links;
13869
- data?: Array<RateRuleResponseObject>;
13870
- };
14652
+ 200: Array<JobWageDeterminationResponseObject>;
13871
14653
  };
13872
- export type ListRateRulesResponse = ListRateRulesResponses[keyof ListRateRulesResponses];
13873
- export type CreateRateRuleData = {
13874
- body: RateRuleParameters;
14654
+ export type ListJobWageDeterminationScheduledChangesResponse = ListJobWageDeterminationScheduledChangesResponses[keyof ListJobWageDeterminationScheduledChangesResponses];
14655
+ export type ScheduleJobWageDeterminationChangeData = {
14656
+ body: JobWageDeterminationScheduledChangeParameters;
14657
+ headers: {
14658
+ /**
14659
+ * Version validator this write is composed against — the `ETag` from a read of this determination, or `*` to write against whatever exists. See "Version validators" in the API overview.
14660
+ */
14661
+ 'If-Match': string;
14662
+ };
13875
14663
  path: {
13876
14664
  job_id: string;
13877
14665
  wage_determination_id: string;
13878
14666
  };
13879
14667
  query?: never;
13880
- url: '/api/v1/jobs/{job_id}/wage_determinations/{wage_determination_id}/rate_rules';
14668
+ url: '/api/v1/jobs/{job_id}/wage_determinations/{wage_determination_id}/scheduled_changes';
13881
14669
  };
13882
- export type CreateRateRuleErrors = {
14670
+ export type ScheduleJobWageDeterminationChangeErrors = {
14671
+ /**
14672
+ * Bad Request (missing effective_date)
14673
+ */
14674
+ 400: Problem;
13883
14675
  /**
13884
14676
  * Forbidden
13885
14677
  */
13886
14678
  403: Problem;
14679
+ /**
14680
+ * Not Found
14681
+ */
14682
+ 404: Problem;
14683
+ /**
14684
+ * Conflict
14685
+ */
14686
+ 409: Problem;
14687
+ /**
14688
+ * Precondition Failed
14689
+ */
14690
+ 412: Problem;
13887
14691
  /**
13888
14692
  * Unprocessable Content
13889
14693
  */
13890
14694
  422: Problem;
14695
+ /**
14696
+ * Precondition Required
14697
+ */
14698
+ 428: Problem;
13891
14699
  };
13892
- export type CreateRateRuleError = CreateRateRuleErrors[keyof CreateRateRuleErrors];
13893
- export type CreateRateRuleResponses = {
14700
+ export type ScheduleJobWageDeterminationChangeError = ScheduleJobWageDeterminationChangeErrors[keyof ScheduleJobWageDeterminationChangeErrors];
14701
+ export type ScheduleJobWageDeterminationChangeResponses = {
13894
14702
  /**
13895
14703
  * Created
13896
14704
  */
13897
- 201: RateRuleResponseObject;
14705
+ 201: JobWageDeterminationResponseObject;
13898
14706
  };
13899
- export type CreateRateRuleResponse = CreateRateRuleResponses[keyof CreateRateRuleResponses];
13900
- export type GetRateRuleData = {
14707
+ export type ScheduleJobWageDeterminationChangeResponse = ScheduleJobWageDeterminationChangeResponses[keyof ScheduleJobWageDeterminationChangeResponses];
14708
+ export type CancelJobWageDeterminationScheduledTerminationData = {
13901
14709
  body?: never;
14710
+ headers: {
14711
+ /**
14712
+ * Version validator this write is composed against — the `ETag` from a read of this determination, or `*` to write against whatever exists. See "Version validators" in the API overview.
14713
+ */
14714
+ 'If-Match': string;
14715
+ };
13902
14716
  path: {
13903
14717
  job_id: string;
13904
14718
  wage_determination_id: string;
13905
- id: string;
13906
- };
13907
- query?: {
13908
- /**
13909
- * Read the version valid at this point in time. Defaults to now.
13910
- */
13911
- 'as_of[valid]'?: string;
13912
14719
  };
13913
- url: '/api/v1/jobs/{job_id}/wage_determinations/{wage_determination_id}/rate_rules/{id}';
14720
+ query?: never;
14721
+ url: '/api/v1/jobs/{job_id}/wage_determinations/{wage_determination_id}/scheduled_termination';
13914
14722
  };
13915
- export type GetRateRuleErrors = {
14723
+ export type CancelJobWageDeterminationScheduledTerminationErrors = {
13916
14724
  /**
13917
14725
  * Forbidden
13918
14726
  */
@@ -13921,32 +14729,45 @@ export type GetRateRuleErrors = {
13921
14729
  * Not Found
13922
14730
  */
13923
14731
  404: Problem;
14732
+ /**
14733
+ * Precondition Failed
14734
+ */
14735
+ 412: Problem;
14736
+ /**
14737
+ * Unprocessable Content
14738
+ */
14739
+ 422: Problem;
14740
+ /**
14741
+ * Precondition Required
14742
+ */
14743
+ 428: Problem;
13924
14744
  };
13925
- export type GetRateRuleError = GetRateRuleErrors[keyof GetRateRuleErrors];
13926
- export type GetRateRuleResponses = {
14745
+ export type CancelJobWageDeterminationScheduledTerminationError = CancelJobWageDeterminationScheduledTerminationErrors[keyof CancelJobWageDeterminationScheduledTerminationErrors];
14746
+ export type CancelJobWageDeterminationScheduledTerminationResponses = {
13927
14747
  /**
13928
14748
  * Success
13929
14749
  */
13930
- 200: RateRuleResponseObject;
14750
+ 200: JobWageDeterminationResponseObject;
13931
14751
  };
13932
- export type GetRateRuleResponse = GetRateRuleResponses[keyof GetRateRuleResponses];
13933
- export type ListJobWageDeterminationHistoryData = {
13934
- body?: never;
13935
- path: {
13936
- job_id: string;
14752
+ export type CancelJobWageDeterminationScheduledTerminationResponse = CancelJobWageDeterminationScheduledTerminationResponses[keyof CancelJobWageDeterminationScheduledTerminationResponses];
14753
+ export type ScheduleJobWageDeterminationTerminationData = {
14754
+ body: JobWageDeterminationScheduledTerminationParameters;
14755
+ headers: {
13937
14756
  /**
13938
- * The determination's version-stable identity, as returned in `id`.
14757
+ * Version validator this write is composed against — the `ETag` from a read of this determination, or `*` to write against whatever exists. See "Version validators" in the API overview.
13939
14758
  */
13940
- wage_determination_id: string;
14759
+ 'If-Match': string;
13941
14760
  };
13942
- query?: {
13943
- 'as_of[valid]'?: string;
14761
+ path: {
14762
+ job_id: string;
14763
+ wage_determination_id: string;
13944
14764
  };
13945
- url: '/api/v1/jobs/{job_id}/wage_determinations/{wage_determination_id}/history';
14765
+ query?: never;
14766
+ url: '/api/v1/jobs/{job_id}/wage_determinations/{wage_determination_id}/scheduled_termination';
13946
14767
  };
13947
- export type ListJobWageDeterminationHistoryErrors = {
14768
+ export type ScheduleJobWageDeterminationTerminationErrors = {
13948
14769
  /**
13949
- * Bad Request
14770
+ * Bad Request (missing effective_date)
13950
14771
  */
13951
14772
  400: Problem;
13952
14773
  /**
@@ -13957,19 +14778,31 @@ export type ListJobWageDeterminationHistoryErrors = {
13957
14778
  * Not Found
13958
14779
  */
13959
14780
  404: Problem;
14781
+ /**
14782
+ * Conflict
14783
+ */
14784
+ 409: Problem;
14785
+ /**
14786
+ * Precondition Failed
14787
+ */
14788
+ 412: Problem;
14789
+ /**
14790
+ * Unprocessable Content
14791
+ */
14792
+ 422: Problem;
14793
+ /**
14794
+ * Precondition Required
14795
+ */
14796
+ 428: Problem;
13960
14797
  };
13961
- export type ListJobWageDeterminationHistoryError = ListJobWageDeterminationHistoryErrors[keyof ListJobWageDeterminationHistoryErrors];
13962
- export type ListJobWageDeterminationHistoryResponses = {
14798
+ export type ScheduleJobWageDeterminationTerminationError = ScheduleJobWageDeterminationTerminationErrors[keyof ScheduleJobWageDeterminationTerminationErrors];
14799
+ export type ScheduleJobWageDeterminationTerminationResponses = {
13963
14800
  /**
13964
- * Success
14801
+ * Created
13965
14802
  */
13966
- 200: {
13967
- meta?: Meta;
13968
- links?: Links;
13969
- data?: Array<JobWageDeterminationHistoryVersionObject>;
13970
- };
14803
+ 201: JobWageDeterminationResponseObject;
13971
14804
  };
13972
- export type ListJobWageDeterminationHistoryResponse = ListJobWageDeterminationHistoryResponses[keyof ListJobWageDeterminationHistoryResponses];
14805
+ export type ScheduleJobWageDeterminationTerminationResponse = ScheduleJobWageDeterminationTerminationResponses[keyof ScheduleJobWageDeterminationTerminationResponses];
13973
14806
  export type ListJobWageDeterminationsData = {
13974
14807
  body?: never;
13975
14808
  path: {
@@ -14007,9 +14840,9 @@ export type ListJobWageDeterminationsResponses = {
14007
14840
  * Success
14008
14841
  */
14009
14842
  200: {
14010
- meta?: Meta;
14011
- links?: Links;
14012
- data?: Array<JobWageDeterminationResponseObject>;
14843
+ meta: Meta;
14844
+ links: Links;
14845
+ data: Array<JobWageDeterminationResponseObject>;
14013
14846
  };
14014
14847
  };
14015
14848
  export type ListJobWageDeterminationsResponse = ListJobWageDeterminationsResponses[keyof ListJobWageDeterminationsResponses];
@@ -14116,6 +14949,55 @@ export type GetJobWageDeterminationResponses = {
14116
14949
  200: JobWageDeterminationResponseObject;
14117
14950
  };
14118
14951
  export type GetJobWageDeterminationResponse = GetJobWageDeterminationResponses[keyof GetJobWageDeterminationResponses];
14952
+ export type UpdateJobWageDeterminationData = {
14953
+ body: JobWageDeterminationUpdateParameters;
14954
+ headers: {
14955
+ /**
14956
+ * 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.
14957
+ */
14958
+ 'If-Match': string;
14959
+ };
14960
+ path: {
14961
+ job_id: string;
14962
+ id: string;
14963
+ };
14964
+ query?: never;
14965
+ url: '/api/v1/jobs/{job_id}/wage_determinations/{id}';
14966
+ };
14967
+ export type UpdateJobWageDeterminationErrors = {
14968
+ /**
14969
+ * Forbidden
14970
+ */
14971
+ 403: Problem;
14972
+ /**
14973
+ * Not Found
14974
+ */
14975
+ 404: Problem;
14976
+ /**
14977
+ * Conflict
14978
+ */
14979
+ 409: Problem;
14980
+ /**
14981
+ * Precondition Failed
14982
+ */
14983
+ 412: Problem;
14984
+ /**
14985
+ * Unprocessable Content
14986
+ */
14987
+ 422: Problem;
14988
+ /**
14989
+ * Precondition Required
14990
+ */
14991
+ 428: Problem;
14992
+ };
14993
+ export type UpdateJobWageDeterminationError = UpdateJobWageDeterminationErrors[keyof UpdateJobWageDeterminationErrors];
14994
+ export type UpdateJobWageDeterminationResponses = {
14995
+ /**
14996
+ * Success
14997
+ */
14998
+ 200: JobWageDeterminationResponseObject;
14999
+ };
15000
+ export type UpdateJobWageDeterminationResponse = UpdateJobWageDeterminationResponses[keyof UpdateJobWageDeterminationResponses];
14119
15001
  export type ListJobsData = {
14120
15002
  body?: never;
14121
15003
  path?: never;
@@ -14171,9 +15053,9 @@ export type ListJobsResponses = {
14171
15053
  * Success
14172
15054
  */
14173
15055
  200: {
14174
- meta?: Meta;
14175
- links?: Links;
14176
- data?: Array<JobResponseObject>;
15056
+ meta: Meta;
15057
+ links: Links;
15058
+ data: Array<JobResponseObject>;
14177
15059
  };
14178
15060
  };
14179
15061
  export type ListJobsResponse = ListJobsResponses[keyof ListJobsResponses];
@@ -14405,9 +15287,9 @@ export type ListCompensationElementsResponses = {
14405
15287
  * Success
14406
15288
  */
14407
15289
  200: {
14408
- meta?: Meta;
14409
- links?: Links;
14410
- data?: Array<CompensationElementResponseObject>;
15290
+ meta: Meta;
15291
+ links: Links;
15292
+ data: Array<CompensationElementResponseObject>;
14411
15293
  };
14412
15294
  };
14413
15295
  export type ListCompensationElementsResponse = ListCompensationElementsResponses[keyof ListCompensationElementsResponses];
@@ -14474,9 +15356,9 @@ export type ListExternalMapHistoryResponses = {
14474
15356
  * Success
14475
15357
  */
14476
15358
  200: {
14477
- meta?: Meta;
14478
- links?: Links;
14479
- data?: Array<PayrollExternalMapHistoryVersionObject>;
15359
+ meta: Meta;
15360
+ links: Links;
15361
+ data: Array<PayrollExternalMapHistoryVersionObject>;
14480
15362
  };
14481
15363
  };
14482
15364
  export type ListExternalMapHistoryResponse = ListExternalMapHistoryResponses[keyof ListExternalMapHistoryResponses];
@@ -14542,9 +15424,9 @@ export type ListExternalMapsResponses = {
14542
15424
  * Success
14543
15425
  */
14544
15426
  200: {
14545
- meta?: Meta;
14546
- links?: Links;
14547
- data?: Array<PayrollExternalMapResponseObject>;
15427
+ meta: Meta;
15428
+ links: Links;
15429
+ data: Array<PayrollExternalMapResponseObject>;
14548
15430
  };
14549
15431
  };
14550
15432
  export type ListExternalMapsResponse = ListExternalMapsResponses[keyof ListExternalMapsResponses];
@@ -14626,9 +15508,9 @@ export type ListFringeBenefitPlansResponses = {
14626
15508
  * Success
14627
15509
  */
14628
15510
  200: {
14629
- meta?: Meta;
14630
- links?: Links;
14631
- data?: Array<PayrollFringeBenefitPlanResponseObject>;
15511
+ meta: Meta;
15512
+ links: Links;
15513
+ data: Array<PayrollFringeBenefitPlanResponseObject>;
14632
15514
  };
14633
15515
  };
14634
15516
  export type ListFringeBenefitPlansResponse = ListFringeBenefitPlansResponses[keyof ListFringeBenefitPlansResponses];
@@ -15278,9 +16160,9 @@ export type ListPerDiemsResponses = {
15278
16160
  * Success
15279
16161
  */
15280
16162
  200: {
15281
- meta?: Meta;
15282
- links?: Links;
15283
- data?: Array<PerDiemResponseObject>;
16163
+ meta: Meta;
16164
+ links: Links;
16165
+ data: Array<PerDiemResponseObject>;
15284
16166
  };
15285
16167
  };
15286
16168
  export type ListPerDiemsResponse = ListPerDiemsResponses[keyof ListPerDiemsResponses];
@@ -15440,9 +16322,9 @@ export type ListPositionFunctionsResponses = {
15440
16322
  * Success
15441
16323
  */
15442
16324
  200: {
15443
- meta?: Meta;
15444
- links?: Links;
15445
- data?: Array<PositionFunctionResponseObject>;
16325
+ meta: Meta;
16326
+ links: Links;
16327
+ data: Array<PositionFunctionResponseObject>;
15446
16328
  };
15447
16329
  };
15448
16330
  export type ListPositionFunctionsResponse = ListPositionFunctionsResponses[keyof ListPositionFunctionsResponses];
@@ -15609,9 +16491,9 @@ export type ListCompletionsResponses = {
15609
16491
  * Success
15610
16492
  */
15611
16493
  200: {
15612
- meta?: Meta;
15613
- links?: Links;
15614
- data?: Array<ProductionCompletionResponseObject>;
16494
+ meta: Meta;
16495
+ links: Links;
16496
+ data: Array<ProductionCompletionResponseObject>;
15615
16497
  };
15616
16498
  };
15617
16499
  export type ListCompletionsResponse = ListCompletionsResponses[keyof ListCompletionsResponses];
@@ -15814,9 +16696,9 @@ export type ListProjectsResponses = {
15814
16696
  * Success
15815
16697
  */
15816
16698
  200: {
15817
- meta?: Meta;
15818
- links?: Links;
15819
- data?: Array<ProjectResponseObject>;
16699
+ meta: Meta;
16700
+ links: Links;
16701
+ data: Array<ProjectResponseObject>;
15820
16702
  };
15821
16703
  };
15822
16704
  export type ListProjectsResponse = ListProjectsResponses[keyof ListProjectsResponses];
@@ -16011,9 +16893,9 @@ export type ListTradesResponses = {
16011
16893
  * Success
16012
16894
  */
16013
16895
  200: {
16014
- meta?: Meta;
16015
- links?: Links;
16016
- data?: Array<PwaTradeResponseObject>;
16896
+ meta: Meta;
16897
+ links: Links;
16898
+ data: Array<PwaTradeResponseObject>;
16017
16899
  };
16018
16900
  };
16019
16901
  export type ListTradesResponse = ListTradesResponses[keyof ListTradesResponses];
@@ -16233,9 +17115,9 @@ export type ListTemplatesResponses = {
16233
17115
  * Success
16234
17116
  */
16235
17117
  200: {
16236
- meta?: Meta;
16237
- links?: Links;
16238
- data?: Array<JobTemplateResponseObject>;
17118
+ meta: Meta;
17119
+ links: Links;
17120
+ data: Array<JobTemplateResponseObject>;
16239
17121
  };
16240
17122
  };
16241
17123
  export type ListTemplatesResponse = ListTemplatesResponses[keyof ListTemplatesResponses];
@@ -16338,9 +17220,9 @@ export type ListTimeCardPerDiemsResponses = {
16338
17220
  * Success
16339
17221
  */
16340
17222
  200: {
16341
- meta?: Meta;
16342
- links?: Links;
16343
- data?: Array<TimeCardPerDiemResponseObject>;
17223
+ meta: Meta;
17224
+ links: Links;
17225
+ data: Array<TimeCardPerDiemResponseObject>;
16344
17226
  };
16345
17227
  };
16346
17228
  export type ListTimeCardPerDiemsResponse = ListTimeCardPerDiemsResponses[keyof ListTimeCardPerDiemsResponses];
@@ -16478,9 +17360,9 @@ export type ListPriorPeriodAdjustmentsResponses = {
16478
17360
  * Success
16479
17361
  */
16480
17362
  200: {
16481
- meta?: Meta;
16482
- links?: Links;
16483
- data?: Array<PriorPeriodAdjustmentResponseObject>;
17363
+ meta: Meta;
17364
+ links: Links;
17365
+ data: Array<PriorPeriodAdjustmentResponseObject>;
16484
17366
  };
16485
17367
  };
16486
17368
  export type ListPriorPeriodAdjustmentsResponse = ListPriorPeriodAdjustmentsResponses[keyof ListPriorPeriodAdjustmentsResponses];
@@ -16726,7 +17608,7 @@ export type ListTimeEntriesResponses = {
16726
17608
  };
16727
17609
  export type ListTimeEntriesResponse = ListTimeEntriesResponses[keyof ListTimeEntriesResponses];
16728
17610
  export type CreateTimeEntryData = {
16729
- body: TimeEntryParameters;
17611
+ body: TimeEntryCreateParameters;
16730
17612
  path?: never;
16731
17613
  query?: never;
16732
17614
  url: '/api/v1/time_entries';
@@ -16783,7 +17665,7 @@ export type DeleteTimeEntryResponses = {
16783
17665
  };
16784
17666
  export type DeleteTimeEntryResponse = DeleteTimeEntryResponses[keyof DeleteTimeEntryResponses];
16785
17667
  export type UpdateTimeEntryData = {
16786
- body: TimeEntryParameters;
17668
+ body: TimeEntryUpdateParameters;
16787
17669
  path: {
16788
17670
  /**
16789
17671
  * Unique identifier of the time entry.
@@ -16900,9 +17782,9 @@ export type ListTimecodeHistoryResponses = {
16900
17782
  * Success
16901
17783
  */
16902
17784
  200: {
16903
- meta?: Meta;
16904
- links?: Links;
16905
- data?: Array<TimecodeHistoryVersionObject>;
17785
+ meta: Meta;
17786
+ links: Links;
17787
+ data: Array<TimecodeHistoryVersionObject>;
16906
17788
  };
16907
17789
  };
16908
17790
  export type ListTimecodeHistoryResponse = ListTimecodeHistoryResponses[keyof ListTimecodeHistoryResponses];
@@ -17178,9 +18060,9 @@ export type ListTimecodesResponses = {
17178
18060
  * Success
17179
18061
  */
17180
18062
  200: {
17181
- meta?: Meta;
17182
- links?: Links;
17183
- data?: Array<TimecodeResponseObject>;
18063
+ meta: Meta;
18064
+ links: Links;
18065
+ data: Array<TimecodeResponseObject>;
17184
18066
  };
17185
18067
  };
17186
18068
  export type ListTimecodesResponse = ListTimecodesResponses[keyof ListTimecodesResponses];
@@ -17427,9 +18309,9 @@ export type ListAttestationConfigsResponses = {
17427
18309
  * Success
17428
18310
  */
17429
18311
  200: {
17430
- meta?: Meta;
17431
- links?: Links;
17432
- data?: Array<AttestationConfigResponseObject>;
18312
+ meta: Meta;
18313
+ links: Links;
18314
+ data: Array<AttestationConfigResponseObject>;
17433
18315
  };
17434
18316
  };
17435
18317
  export type ListAttestationConfigsResponse = ListAttestationConfigsResponses[keyof ListAttestationConfigsResponses];
@@ -17550,9 +18432,9 @@ export type ListPayPeriodConfigHistoryResponses = {
17550
18432
  * Success
17551
18433
  */
17552
18434
  200: {
17553
- meta?: Meta;
17554
- links?: Links;
17555
- data?: Array<PayPeriodConfigHistoryVersionObject>;
18435
+ meta: Meta;
18436
+ links: Links;
18437
+ data: Array<PayPeriodConfigHistoryVersionObject>;
17556
18438
  };
17557
18439
  };
17558
18440
  export type ListPayPeriodConfigHistoryResponse = ListPayPeriodConfigHistoryResponses[keyof ListPayPeriodConfigHistoryResponses];
@@ -17616,9 +18498,9 @@ export type ListHolidaysResponses = {
17616
18498
  * Success
17617
18499
  */
17618
18500
  200: {
17619
- meta?: Meta;
17620
- links?: Links;
17621
- data?: Array<HolidayResponseObject>;
18501
+ meta: Meta;
18502
+ links: Links;
18503
+ data: Array<HolidayResponseObject>;
17622
18504
  };
17623
18505
  };
17624
18506
  export type ListHolidaysResponse = ListHolidaysResponses[keyof ListHolidaysResponses];
@@ -17764,9 +18646,9 @@ export type ListPayPeriodConfigsResponses = {
17764
18646
  * Success
17765
18647
  */
17766
18648
  200: {
17767
- meta?: Meta;
17768
- links?: Links;
17769
- data?: Array<PayPeriodConfigResponseObject>;
18649
+ meta: Meta;
18650
+ links: Links;
18651
+ data: Array<PayPeriodConfigResponseObject>;
17770
18652
  };
17771
18653
  };
17772
18654
  export type ListPayPeriodConfigsResponse = ListPayPeriodConfigsResponses[keyof ListPayPeriodConfigsResponses];
@@ -17848,9 +18730,9 @@ export type ListTimeCardActualsResponses = {
17848
18730
  * Success
17849
18731
  */
17850
18732
  200: {
17851
- meta?: Meta;
17852
- links?: Links;
17853
- data?: Array<TimeCardActualsResponseObject>;
18733
+ meta: Meta;
18734
+ links: Links;
18735
+ data: Array<TimeCardActualsResponseObject>;
17854
18736
  };
17855
18737
  };
17856
18738
  export type ListTimeCardActualsResponse = ListTimeCardActualsResponses[keyof ListTimeCardActualsResponses];
@@ -17930,9 +18812,9 @@ export type ListUserRolesResponses = {
17930
18812
  * Success
17931
18813
  */
17932
18814
  200: {
17933
- meta?: Meta;
17934
- links?: Links;
17935
- data?: Array<UserRoleResponse>;
18815
+ meta: Meta;
18816
+ links: Links;
18817
+ data: Array<UserRoleResponse>;
17936
18818
  };
17937
18819
  };
17938
18820
  export type ListUserRolesResponse = ListUserRolesResponses[keyof ListUserRolesResponses];
@@ -18313,9 +19195,9 @@ export type ListUsersResponses = {
18313
19195
  * Success
18314
19196
  */
18315
19197
  200: {
18316
- meta?: Meta;
18317
- links?: Links;
18318
- data?: Array<UserResponseObject>;
19198
+ meta: Meta;
19199
+ links: Links;
19200
+ data: Array<UserResponseObject>;
18319
19201
  };
18320
19202
  };
18321
19203
  export type ListUsersResponse = ListUsersResponses[keyof ListUsersResponses];
@@ -18557,9 +19439,9 @@ export type ListWorkTypesResponses = {
18557
19439
  * Success
18558
19440
  */
18559
19441
  200: {
18560
- meta?: Meta;
18561
- links?: Links;
18562
- data?: Array<WorkTypeResponseObject>;
19442
+ meta: Meta;
19443
+ links: Links;
19444
+ data: Array<WorkTypeResponseObject>;
18563
19445
  };
18564
19446
  };
18565
19447
  export type ListWorkTypesResponse = ListWorkTypesResponses[keyof ListWorkTypesResponses];