@dsptch-work/api-client 0.1.0 → 0.2.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.
@@ -19,6 +19,11 @@ export type ErrorsObject = {
19
19
  message?: string;
20
20
  }>;
21
21
  };
22
+ export type ApiKeyScopeResponseObject = {
23
+ resource: string;
24
+ action: 'read' | 'create' | 'update' | 'delete';
25
+ name: string;
26
+ };
22
27
  /**
23
28
  * 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.
24
29
  */
@@ -719,9 +724,17 @@ export type TimecodeResponseObject = {
719
724
  */
720
725
  valid_from: string;
721
726
  /**
722
- * ISO8601 timestamp at which this version stops being valid (bitemporal valid-time end); a far-future sentinel (year 9999) until the timecode is terminated.
727
+ * ISO8601 timestamp at which this version stops being valid (bitemporal valid-time end); null until the timecode is terminated.
728
+ */
729
+ valid_to: string | null;
730
+ /**
731
+ * Transaction time — when this version was recorded in DSPTCH (ISO 8601).
732
+ */
733
+ transaction_from: string;
734
+ /**
735
+ * Transaction time — when this version was superseded by a correction (ISO 8601); null while it is still the current belief.
723
736
  */
724
- valid_to: string;
737
+ transaction_to: string | null;
725
738
  /**
726
739
  * ISO8601 timestamp when the record was created.
727
740
  */
@@ -731,6 +744,33 @@ export type TimecodeResponseObject = {
731
744
  */
732
745
  updated_at: string;
733
746
  };
747
+ export type TimecodeHistoryVersionObject = {
748
+ id: string;
749
+ name: string;
750
+ description: string | null;
751
+ description_is_required: boolean;
752
+ billable: boolean;
753
+ overtime_eligible: boolean;
754
+ unpaid: boolean;
755
+ holiday: boolean;
756
+ pto: boolean;
757
+ safety: boolean;
758
+ lunch_shortcut: boolean;
759
+ break_shortcut: boolean;
760
+ pwa: boolean;
761
+ rest_and_recovery: boolean;
762
+ incentive_pay_eligible: boolean;
763
+ restricted_to: 'none' | 'job' | 'non_job' | 'job_with_timecode';
764
+ default_for_company_id: string | null;
765
+ valid_from: string;
766
+ valid_to: string | null;
767
+ transaction_from: string;
768
+ transaction_to: string | null;
769
+ created_at: string;
770
+ updated_at: string;
771
+ version_status: 'scheduled' | 'current' | 'historical';
772
+ corrections: Array<TimecodeResponseObject>;
773
+ };
734
774
  /**
735
775
  * Request body for creating or updating a timecode; only `name` is required. On create, omitted fields take their model/DB defaults (noted per field). On update the request applies a bitemporal correction, so omitted fields keep the current version's values rather than reverting to defaults.
736
776
  */
@@ -927,6 +967,10 @@ export type AssetsProductResponseObject = {
927
967
  */
928
968
  category_id: string | null;
929
969
  attributes: AssetsAttributeValueObjects;
970
+ /**
971
+ * Images attached to the product; each carries a download url for its file.
972
+ */
973
+ images: Array<AssetsAttachmentResponseObject>;
930
974
  /**
931
975
  * When the record was created (ISO 8601).
932
976
  */
@@ -937,7 +981,7 @@ export type AssetsProductResponseObject = {
937
981
  updated_at: string;
938
982
  };
939
983
  /**
940
- * Create or update a catalog product. `type` (serial or bulk) is required on create and cannot be changed afterward; `performed_by_user_id` is required on create. `attribute_values` upserts the product's category-attribute values.
984
+ * Create a catalog product. `type` (serial or bulk) is required and immutable. `attribute_values` upserts the product's category-attribute values.
941
985
  */
942
986
  export type AssetsProductParameters = {
943
987
  /**
@@ -997,11 +1041,77 @@ export type AssetsProductParameters = {
997
1041
  */
998
1042
  attribute_option_id?: string | null;
999
1043
  }>;
1044
+ /**
1045
+ * Image attachments. Send file with a signed_id to add one; include id with _destroy to remove an existing one.
1046
+ */
1047
+ images_attributes?: Array<AssetsAttachmentParameters>;
1000
1048
  /**
1001
1049
  * ID of the user this write is performed on behalf of, recorded for auditing. Required on create; must belong to your company.
1002
1050
  */
1003
1051
  performed_by_user_id: string;
1004
1052
  };
1053
+ /**
1054
+ * Update a catalog product. All fields are optional — send only what changes. `type` is immutable and `performed_by_user_id` is create-only, so neither is accepted here. `attribute_values` upserts the product's category-attribute values.
1055
+ */
1056
+ export type AssetsProductUpdateParameters = {
1057
+ /**
1058
+ * Human-readable product name.
1059
+ */
1060
+ name?: string;
1061
+ /**
1062
+ * Free-text description of the product. Write-only — accepted here but not returned in the product response.
1063
+ */
1064
+ description?: string | null;
1065
+ /**
1066
+ * ID of the category classifying this product; null when uncategorized.
1067
+ */
1068
+ category_id?: string | null;
1069
+ /**
1070
+ * Universal Product Code; unique within the company. Null when not set.
1071
+ */
1072
+ upc?: string | null;
1073
+ /**
1074
+ * Internal stock-keeping unit (SKU); unique within the company. Null when not set.
1075
+ */
1076
+ internal_sku?: string | null;
1077
+ /**
1078
+ * Default low-stock reorder threshold for this product's items, applied across sites unless a site overrides it. Null when not set.
1079
+ */
1080
+ default_minimum_quantity?: number | null;
1081
+ /**
1082
+ * Manufacturer or brand; required when model is given. Null when not set.
1083
+ */
1084
+ make?: string | null;
1085
+ /**
1086
+ * Model name or number; unique per manufacturer within the company. Null when not set.
1087
+ */
1088
+ model?: string | null;
1089
+ /**
1090
+ * Unit of measure for counting a bulk product's inventory: one of each, pair, or pack. A serial product is always counted each.
1091
+ */
1092
+ counted_by?: 'each' | 'pair' | 'pack';
1093
+ /**
1094
+ * Upserts the values of this product's category attributes, one entry per attribute. Send a blank value and null attribute_option_id to clear one.
1095
+ */
1096
+ attribute_values?: Array<{
1097
+ /**
1098
+ * ID of the attribute definition.
1099
+ */
1100
+ attribute_id: string;
1101
+ /**
1102
+ * The entered value for a non-select attribute (text, number, date, or boolean as a string); null for a select attribute or when unfilled.
1103
+ */
1104
+ value?: string | null;
1105
+ /**
1106
+ * ID of the chosen option for a select attribute; null otherwise.
1107
+ */
1108
+ attribute_option_id?: string | null;
1109
+ }>;
1110
+ /**
1111
+ * Image attachments. Send file with a signed_id to add one; include id with _destroy to remove an existing one.
1112
+ */
1113
+ images_attributes?: Array<AssetsAttachmentParameters>;
1114
+ };
1005
1115
  /**
1006
1116
  * A named daily allowance (meals, lodging, travel, and the like) that a company can attach to time.
1007
1117
  */
@@ -1601,6 +1711,28 @@ export type PayPeriodConfigResponseObject = {
1601
1711
  */
1602
1712
  created_at: string;
1603
1713
  };
1714
+ export type PayPeriodConfigHistoryVersionObject = {
1715
+ uid: string;
1716
+ company_id: string;
1717
+ name: string;
1718
+ frequency: 'weekly' | 'biweekly';
1719
+ start_day_of_week: number;
1720
+ tz_name: string;
1721
+ currency: string;
1722
+ status: 'synced' | 'pending' | 'failed';
1723
+ payroll_mode: 'none' | 'base' | 'aggregate';
1724
+ time_mode: 'none' | 'base' | 'aggregate';
1725
+ payroll_system: 'rippling' | 'quickbooks_online' | 'paychex' | 'gusto';
1726
+ actuals_enabled: boolean | null;
1727
+ requires_external_map_contributor: boolean;
1728
+ is_paid_after_holiday: boolean;
1729
+ is_demo: boolean | null;
1730
+ valid_from: string;
1731
+ valid_to: string | null;
1732
+ created_at: string;
1733
+ version_status: 'scheduled' | 'current' | 'historical';
1734
+ corrections: Array<PayPeriodConfigResponseObject>;
1735
+ };
1604
1736
  /**
1605
1737
  * Create or update a holiday on a pay schedule. name, holiday_type, and month are required; mday is required for fixed holidays and wday + week for floating holidays (enforced by model validation).
1606
1738
  */
@@ -3367,19 +3499,6 @@ export type FormSubmissionIndexObject = {
3367
3499
  * When the record was last updated (ISO 8601).
3368
3500
  */
3369
3501
  updated_at?: string;
3370
- /**
3371
- * System validity window for this version of the submission (bitemporal).
3372
- */
3373
- valid_time?: {
3374
- /**
3375
- * When this version became valid (ISO 8601).
3376
- */
3377
- start?: string;
3378
- /**
3379
- * When this version stopped being valid (ISO 8601); null for the current version.
3380
- */
3381
- end?: string | null;
3382
- };
3383
3502
  }>;
3384
3503
  };
3385
3504
  /**
@@ -3433,19 +3552,6 @@ export type FormSubmissionResponseObject = {
3433
3552
  * When the record was last updated (ISO 8601).
3434
3553
  */
3435
3554
  updated_at: string;
3436
- /**
3437
- * System validity window for this version of the submission (bitemporal).
3438
- */
3439
- valid_time: {
3440
- /**
3441
- * When this version became valid (ISO 8601).
3442
- */
3443
- start?: string;
3444
- /**
3445
- * When this version stopped being valid (ISO 8601); null for the current version.
3446
- */
3447
- end?: string | null;
3448
- };
3449
3555
  };
3450
3556
  /**
3451
3557
  * Request body for updating a worker's employment at your company. Corrects administrative fields (employment type, title, manager, payroll id, hire date, and time-and-attendance enrollment) across the whole employment history. For time-effective pay changes, use the scheduled-changes endpoints instead.
@@ -4713,17 +4819,17 @@ export type PayrollExternalMapResponseObject = {
4713
4819
  */
4714
4820
  valid_from: string;
4715
4821
  /**
4716
- * Valid time — when this version stops being true (ISO 8601); a far-future sentinel (year 9999) while open-ended.
4822
+ * Valid time — when this version stops being true (ISO 8601); null while it is still current.
4717
4823
  */
4718
- valid_to: string;
4824
+ valid_to: string | null;
4719
4825
  /**
4720
4826
  * Transaction time — when this version was recorded in DSPTCH (ISO 8601).
4721
4827
  */
4722
4828
  transaction_from: string;
4723
4829
  /**
4724
- * Transaction time — when this version was superseded by a correction (ISO 8601); a far-future sentinel (year 9999) while current.
4830
+ * Transaction time — when this version was superseded by a correction (ISO 8601); null while it is still the current belief.
4725
4831
  */
4726
- transaction_to: string;
4832
+ transaction_to: string | null;
4727
4833
  /**
4728
4834
  * When the record was created (ISO 8601).
4729
4835
  */
@@ -4733,8 +4839,30 @@ export type PayrollExternalMapResponseObject = {
4733
4839
  */
4734
4840
  updated_at: string;
4735
4841
  };
4842
+ export type PayrollExternalMapHistoryVersionObject = {
4843
+ id: string;
4844
+ bitemporal_id: string;
4845
+ name: string;
4846
+ compensation_element_id: string;
4847
+ compensation_element_name: string;
4848
+ compensation_element_category: 'tax' | 'health' | 'retirement' | 'insurance' | 'earning' | 'garnishment' | 'other';
4849
+ pay_period_config_uid: string | null;
4850
+ fringe_benefit_plan_id: string | null;
4851
+ contributor: 'any' | 'employee' | 'employer';
4852
+ annual_periods: number;
4853
+ created_by_user_id: string | null;
4854
+ global: boolean;
4855
+ valid_from: string;
4856
+ valid_to: string | null;
4857
+ transaction_from: string;
4858
+ transaction_to: string | null;
4859
+ created_at: string;
4860
+ updated_at: string;
4861
+ version_status: 'scheduled' | 'current' | 'historical';
4862
+ corrections: Array<PayrollExternalMapResponseObject>;
4863
+ };
4736
4864
  /**
4737
- * A payroll run — a record of one payroll-processing event as it occurred in the external payroll system (not a run initiated by DSPTCH). Paystubs belong to a run.
4865
+ * A payroll run — a record of one payroll-processing event, synced from an external payroll system or reported to DSPTCH (never a run DSPTCH itself initiates). Paystubs belong to a run.
4738
4866
  */
4739
4867
  export type PayrollRunResponseObject = {
4740
4868
  /**
@@ -4758,7 +4886,7 @@ export type PayrollRunResponseObject = {
4758
4886
  */
4759
4887
  run_type: 'CORRECTION' | 'ON_CYCLE' | 'OFF_CYCLE' | 'RECONCILIATION' | 'SIGN_ON_BONUS' | 'TERMINATION';
4760
4888
  /**
4761
- * Date the external provider processed the payroll (YYYY-MM-DD).
4889
+ * Check date of the run (YYYY-MM-DD): the pay period's pay date for an on-cycle run, the provider's check date for a credential-sourced run, or the payment date the reporting company supplied for a self-reported run.
4762
4890
  */
4763
4891
  run_date: string;
4764
4892
  /**
@@ -4795,7 +4923,7 @@ export type PayrollRunParameters = {
4795
4923
  */
4796
4924
  run_type: 'CORRECTION' | 'ON_CYCLE' | 'OFF_CYCLE' | 'RECONCILIATION' | 'SIGN_ON_BONUS' | 'TERMINATION';
4797
4925
  /**
4798
- * Date the payroll was processed (YYYY-MM-DD). Required.
4926
+ * Check date of the run (YYYY-MM-DD). Required. For a self-reported run (off-cycle with no credential_id), at most 3 days after the current date — later dates fail validation.
4799
4927
  */
4800
4928
  run_date: string;
4801
4929
  /**
@@ -5185,9 +5313,9 @@ export type ComplianceCheckResponseObject = {
5185
5313
  */
5186
5314
  type: 'Compliances::CompanyCheck' | 'Compliances::JobCheck' | 'Compliances::ProjectCheck' | 'Compliances::TimeCardCheck' | 'Compliances::PayPeriodCheck' | 'Compliances::UserCheck' | 'Compliances::UserCompanyCheck';
5187
5315
  /**
5188
- * Lifecycle status of the check: one of passed, failed, not_applicable, dismissed, pending, or error; only dismissed and pending are client-settable (see compliance_check_parameters).
5316
+ * Lifecycle status of the check: one of passed, failed, not_applicable, dismissed, or pending; only dismissed and pending are client-settable (see compliance_check_parameters).
5189
5317
  */
5190
- status: 'passed' | 'failed' | 'not_applicable' | 'dismissed' | 'pending' | 'error';
5318
+ status: 'passed' | 'failed' | 'not_applicable' | 'dismissed' | 'pending';
5191
5319
  /**
5192
5320
  * ID of the requirement this check evaluates.
5193
5321
  */
@@ -6698,6 +6826,10 @@ export type FederalJobWageDeterminationResponseObject = {
6698
6826
  * ID of the job this wage determination applies to.
6699
6827
  */
6700
6828
  job_id: string;
6829
+ /**
6830
+ * 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.
6831
+ */
6832
+ trade_id: string;
6701
6833
  /**
6702
6834
  * 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.
6703
6835
  */
@@ -6726,7 +6858,14 @@ export type FederalJobWageDeterminationResponseObject = {
6726
6858
  * 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.
6727
6859
  */
6728
6860
  general_wage_determination: string | null;
6729
- valid_time: WageDeterminationValidTime;
6861
+ /**
6862
+ * Valid time — when this version of the determination took effect (ISO 8601).
6863
+ */
6864
+ valid_from: string;
6865
+ /**
6866
+ * Valid time — when this version stopped applying (ISO 8601); null while it is still current.
6867
+ */
6868
+ valid_to: string | null;
6730
6869
  /**
6731
6870
  * When the record was created (ISO 8601).
6732
6871
  */
@@ -6752,6 +6891,10 @@ export type RegionalJobWageDeterminationResponseObject = {
6752
6891
  * ID of the job this wage determination applies to.
6753
6892
  */
6754
6893
  job_id: string;
6894
+ /**
6895
+ * 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.
6896
+ */
6897
+ trade_id: string;
6755
6898
  /**
6756
6899
  * 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.
6757
6900
  */
@@ -6773,7 +6916,14 @@ export type RegionalJobWageDeterminationResponseObject = {
6773
6916
  */
6774
6917
  general_wage_determination: string | null;
6775
6918
  regional_fields: RegionalWageDeterminationFields;
6776
- valid_time: WageDeterminationValidTime;
6919
+ /**
6920
+ * Valid time — when this version of the determination took effect (ISO 8601).
6921
+ */
6922
+ valid_from: string;
6923
+ /**
6924
+ * Valid time — when this version stopped applying (ISO 8601); null while it is still current.
6925
+ */
6926
+ valid_to: string | null;
6777
6927
  /**
6778
6928
  * When the record was created (ISO 8601).
6779
6929
  */
@@ -6783,18 +6933,47 @@ export type RegionalJobWageDeterminationResponseObject = {
6783
6933
  */
6784
6934
  updated_at: string;
6785
6935
  };
6786
- /**
6787
- * The time range over which this version of the wage determination is in effect. Half-open, so a null end means it is still current.
6788
- */
6789
- export type WageDeterminationValidTime = {
6790
- /**
6791
- * When this version took effect (ISO 8601).
6792
- */
6793
- start: string;
6794
- /**
6795
- * When this version stopped applying (ISO 8601); null while it is still current.
6796
- */
6797
- end: string | null;
6936
+ export type JobWageDeterminationHistoryVersionObject = ({
6937
+ type: 'Pwa::JobWageDeterminations::Federal';
6938
+ } & FederalJobWageDeterminationHistoryVersionObject) | ({
6939
+ type: 'Pwa::JobWageDeterminations::Regional';
6940
+ } & RegionalJobWageDeterminationHistoryVersionObject);
6941
+ export type FederalJobWageDeterminationHistoryVersionObject = {
6942
+ id: string;
6943
+ uid: string;
6944
+ job_id: string;
6945
+ trade_id: string;
6946
+ type: 'Pwa::JobWageDeterminations::Federal';
6947
+ labor_classification: string;
6948
+ hourly_rate_cents: string;
6949
+ fringe_rate_cents: string;
6950
+ class_code: string | null;
6951
+ construction_category: 'building' | 'heavy' | 'highway' | 'residential';
6952
+ general_wage_determination: string | null;
6953
+ valid_from: string;
6954
+ valid_to: string | null;
6955
+ created_at: string;
6956
+ updated_at: string;
6957
+ version_status: 'scheduled' | 'current' | 'historical';
6958
+ corrections: Array<JobWageDeterminationResponseObject>;
6959
+ };
6960
+ export type RegionalJobWageDeterminationHistoryVersionObject = {
6961
+ id: string;
6962
+ uid: string;
6963
+ job_id: string;
6964
+ trade_id: string;
6965
+ type: 'Pwa::JobWageDeterminations::Regional';
6966
+ labor_classification: string;
6967
+ hourly_rate_cents: string;
6968
+ fringe_rate_cents: string;
6969
+ general_wage_determination: string | null;
6970
+ regional_fields: RegionalWageDeterminationFields;
6971
+ valid_from: string;
6972
+ valid_to: string | null;
6973
+ created_at: string;
6974
+ updated_at: string;
6975
+ version_status: 'scheduled' | 'current' | 'historical';
6976
+ corrections: Array<JobWageDeterminationResponseObject>;
6798
6977
  };
6799
6978
  /**
6800
6979
  * State-specific rate fields for a Regional determination, as decimal-string money in cents
@@ -6837,6 +7016,10 @@ export type FederalJobWageDeterminationParameters = {
6837
7016
  * Human-readable labor classification — the craft or trade this determination sets rates for; the display label, distinct from the machine class code.
6838
7017
  */
6839
7018
  labor_classification: string;
7019
+ /**
7020
+ * 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.
7021
+ */
7022
+ trade_id: string;
6840
7023
  /**
6841
7024
  * Base hourly wage rate, in cents as a decimal string (e.g. "5380.0" is $53.80).
6842
7025
  */
@@ -6870,6 +7053,10 @@ export type RegionalJobWageDeterminationParameters = {
6870
7053
  * Human-readable labor classification — the craft or trade this determination sets rates for; the display label, distinct from the machine class code.
6871
7054
  */
6872
7055
  labor_classification: string;
7056
+ /**
7057
+ * 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.
7058
+ */
7059
+ trade_id: string;
6873
7060
  /**
6874
7061
  * Base hourly wage rate, in cents as a decimal string (e.g. "5380.0" is $53.80).
6875
7062
  */
@@ -7000,7 +7187,7 @@ export type RateRuleCondition = ({
7000
7187
  type: 'overtime_multiplier';
7001
7188
  } & RateRuleOvertimeMultiplierCondition);
7002
7189
  /**
7003
- * A conditional rate-modification rule on a job wage determination — it adds wage or fringe cents when its conditions match. `valid_time` is the temporal window over which this version of the rule is in effect.
7190
+ * A conditional rate-modification rule on a job wage determination — it adds wage or fringe cents when its conditions match. `valid_from` and `valid_to` bound the window over which this version of the rule is in effect.
7004
7191
  */
7005
7192
  export type RateRuleResponseObject = {
7006
7193
  /**
@@ -7024,7 +7211,14 @@ export type RateRuleResponseObject = {
7024
7211
  * The rule's match conditions, at most one per category (time, day-selection, apprentice, overtime). An empty list means the rule always applies.
7025
7212
  */
7026
7213
  conditions: Array<RateRuleCondition>;
7027
- valid_time: WageDeterminationValidTime;
7214
+ /**
7215
+ * Valid time — when this version of the rule took effect (ISO 8601).
7216
+ */
7217
+ valid_from: string;
7218
+ /**
7219
+ * Valid time — when this version stopped applying (ISO 8601); null while it is still current.
7220
+ */
7221
+ valid_to: string | null;
7028
7222
  /**
7029
7223
  * When the record was created (ISO 8601).
7030
7224
  */
@@ -7034,6 +7228,20 @@ export type RateRuleResponseObject = {
7034
7228
  */
7035
7229
  updated_at: string;
7036
7230
  };
7231
+ export type RateRuleHistoryVersionObject = {
7232
+ id: string;
7233
+ uid: string;
7234
+ job_wage_determination_id: string;
7235
+ pay_rates_rule_package_id: string;
7236
+ effect: RateRuleEffect;
7237
+ conditions: Array<RateRuleCondition>;
7238
+ valid_from: string;
7239
+ valid_to: string | null;
7240
+ created_at: string;
7241
+ updated_at: string;
7242
+ version_status: 'scheduled' | 'current' | 'historical';
7243
+ corrections: Array<RateRuleResponseObject>;
7244
+ };
7037
7245
  /**
7038
7246
  * Create a rate rule on a job wage determination. `effect` is required. `conditions` is optional — an omitted or empty list makes the rule always apply. `effective_date` (YYYY-MM-DD) sets when the rule takes effect; it defaults to today and cannot predate the earliest applicable wage determination.
7039
7247
  */
@@ -7104,6 +7312,10 @@ export type AssetsItemResponseObject = {
7104
7312
  * URL to this item in an external system.
7105
7313
  */
7106
7314
  external_system_url: string | null;
7315
+ /**
7316
+ * Images attached to the item; each carries a download url for its file.
7317
+ */
7318
+ images: Array<AssetsAttachmentResponseObject>;
7107
7319
  /**
7108
7320
  * When the record was created (ISO 8601).
7109
7321
  */
@@ -7153,6 +7365,10 @@ export type AssetsItemParameters = {
7153
7365
  * URL to this item in an external system.
7154
7366
  */
7155
7367
  external_system_url?: string;
7368
+ /**
7369
+ * Image attachments. Send file with a signed_id to add one; include id with _destroy to remove an existing one.
7370
+ */
7371
+ images_attributes?: Array<AssetsAttachmentParameters>;
7156
7372
  /**
7157
7373
  * Optional, create only. Stock the new item at this site, recording a receive transaction. Mutually exclusive with user_id.
7158
7374
  */
@@ -7182,6 +7398,10 @@ export type AssetsVendorResponseObject = {
7182
7398
  * ID of the company that owns this record.
7183
7399
  */
7184
7400
  company_id: string;
7401
+ /**
7402
+ * URL of the vendor's logo image; null when no logo is attached.
7403
+ */
7404
+ logo_url: string | null;
7185
7405
  /**
7186
7406
  * When the record was created (ISO 8601).
7187
7407
  */
@@ -7199,6 +7419,10 @@ export type AssetsVendorParameters = {
7199
7419
  * The vendor's name; unique within the company (case-insensitive).
7200
7420
  */
7201
7421
  name: string;
7422
+ /**
7423
+ * A signed_id from POST /api/v1/direct_uploads for a logo image to attach to the vendor.
7424
+ */
7425
+ logo_signed_id?: string;
7202
7426
  };
7203
7427
  /**
7204
7428
  * A physical container that holds a company's assets and inventory — either a fixed, Atlas-mapped location (warehouse or yard) or a standalone mobile container (trailer, truck, van, or conex).
@@ -7383,13 +7607,68 @@ export type AssetsFormAssignmentTriggerParameters = {
7383
7607
  */
7384
7608
  day_of_month_due?: number | null;
7385
7609
  /**
7386
- * IDs of the users the generated form is assigned to. Used only when assign_to is custom; cleared for the other modes.
7610
+ * IDs of the users the generated form is assigned to. Used only when assign_to is custom; cleared for the other modes.
7611
+ */
7612
+ assigned_user_ids?: Array<string>;
7613
+ /**
7614
+ * IDs of the products this rule applies to; the rule fires for items of these products.
7615
+ */
7616
+ product_ids?: Array<string>;
7617
+ };
7618
+ /**
7619
+ * A file attached to an asset — an item or product image, or a service-event attachment. Uploaded through the direct-upload flow; the response carries a URL to download it.
7620
+ */
7621
+ export type AssetsAttachmentResponseObject = {
7622
+ /**
7623
+ * Unique identifier.
7624
+ */
7625
+ id: string;
7626
+ /**
7627
+ * The attached file; null while no blob is attached.
7628
+ */
7629
+ file: {
7630
+ /**
7631
+ * Stored name of the uploaded file.
7632
+ */
7633
+ filename: string;
7634
+ /**
7635
+ * MIME type of the file; null when not recorded.
7636
+ */
7637
+ content_type?: string | null;
7638
+ /**
7639
+ * Size of the file in bytes.
7640
+ */
7641
+ byte_size: number;
7642
+ /**
7643
+ * A URL to download the file.
7644
+ */
7645
+ url: string;
7646
+ } | null;
7647
+ /**
7648
+ * When the record was created (ISO 8601).
7649
+ */
7650
+ created_at: string;
7651
+ /**
7652
+ * When the record was last updated (ISO 8601).
7653
+ */
7654
+ updated_at: string;
7655
+ };
7656
+ /**
7657
+ * One attachment in a nested collection. Send file with a signed_id to add one; send id (with _destroy) to remove an existing one.
7658
+ */
7659
+ export type AssetsAttachmentParameters = {
7660
+ /**
7661
+ * ID of an existing attachment to remove; omit to add a new one.
7662
+ */
7663
+ id?: string;
7664
+ /**
7665
+ * A signed_id from POST /api/v1/direct_uploads identifying the uploaded blob to attach.
7387
7666
  */
7388
- assigned_user_ids?: Array<string>;
7667
+ file?: string;
7389
7668
  /**
7390
- * IDs of the products this rule applies to; the rule fires for items of these products.
7669
+ * Set true to remove the attachment named by id.
7391
7670
  */
7392
- product_ids?: Array<string>;
7671
+ _destroy?: boolean;
7393
7672
  };
7394
7673
  /**
7395
7674
  * A file attached to an asset item — a document such as a manual, warranty, or certificate. Uploaded through the direct-upload flow and optionally marked as a certified copy.
@@ -7427,10 +7706,6 @@ export type AssetsDocumentResponseObject = {
7427
7706
  * The attached file; null while no blob is attached.
7428
7707
  */
7429
7708
  file: {
7430
- /**
7431
- * Signed identifier of the stored file blob.
7432
- */
7433
- signed_id: string;
7434
7709
  /**
7435
7710
  * Stored name of the uploaded file.
7436
7711
  */
@@ -7443,6 +7718,10 @@ export type AssetsDocumentResponseObject = {
7443
7718
  * Size of the file in bytes.
7444
7719
  */
7445
7720
  byte_size: number;
7721
+ /**
7722
+ * A URL to download the file.
7723
+ */
7724
+ url: string;
7446
7725
  } | null;
7447
7726
  /**
7448
7727
  * When the record was created (ISO 8601).
@@ -7936,6 +8215,10 @@ export type AssetsServiceEventFullResponseObject = {
7936
8215
  * When the service was performed (ISO 8601), at company-local midnight of the service date.
7937
8216
  */
7938
8217
  performed_at: string;
8218
+ /**
8219
+ * Document attachments recorded with the service; each carries a download url for its file.
8220
+ */
8221
+ attachments: Array<AssetsAttachmentResponseObject>;
7939
8222
  /**
7940
8223
  * When the record was created (ISO 8601).
7941
8224
  */
@@ -7946,13 +8229,13 @@ export type AssetsServiceEventFullResponseObject = {
7946
8229
  updated_at: string;
7947
8230
  };
7948
8231
  /**
7949
- * Record a service on an item. kind, performed_on, and performed_by_user_id are required. Link a schedule with assets_service_schedule_id to satisfy it — the schedule then dictates the kind or omit it for an ad-hoc service or a repair.
8232
+ * Record a service on an item. performed_on and performed_by_user_id are required. When a schedule is linked with assets_service_schedule_id, the schedule dictates the kind; otherwise provide kind for the ad-hoc service or repair.
7950
8233
  */
7951
8234
  export type AssetsServiceEventParameters = {
7952
8235
  /**
7953
8236
  * The kind of service performed: one of calibration, maintenance, or repair. Ignored when assets_service_schedule_id is set — the schedule dictates the kind.
7954
8237
  */
7955
- kind: 'calibration' | 'maintenance' | 'repair';
8238
+ kind?: 'calibration' | 'maintenance' | 'repair';
7956
8239
  /**
7957
8240
  * Free-text notes on the service; null when none.
7958
8241
  */
@@ -7970,22 +8253,9 @@ export type AssetsServiceEventParameters = {
7970
8253
  */
7971
8254
  performed_by_user_id: string;
7972
8255
  /**
7973
- * Document attachments for the service. On update, include id to keep an existing one or set _destroy to remove it; omit id to add a new one.
8256
+ * Document attachments for the service. On update, set _destroy with an id to remove an existing one; omit id to add a new one.
7974
8257
  */
7975
- attachments_attributes?: Array<{
7976
- /**
7977
- * ID of an existing attachment to update or remove; omit to add a new one.
7978
- */
7979
- id?: string;
7980
- /**
7981
- * A signed_id from POST /api/v1/direct_uploads for the attached file.
7982
- */
7983
- file?: string;
7984
- /**
7985
- * Set true to remove this attachment.
7986
- */
7987
- _destroy?: boolean;
7988
- }>;
8258
+ attachments_attributes?: Array<AssetsAttachmentParameters>;
7989
8259
  };
7990
8260
  /**
7991
8261
  * A product-level service cadence that seeds and syncs the matching schedules on that product's items. Changing its defining fields (name, kind, interval) reconciles linked item schedules in the background.
@@ -8200,6 +8470,21 @@ export type AssetsRetirementParameters = {
8200
8470
  */
8201
8471
  performed_by_user_id: string;
8202
8472
  };
8473
+ export type ListApiKeyScopesData = {
8474
+ body?: never;
8475
+ path?: never;
8476
+ query?: never;
8477
+ url: '/api/v1/api_key/scopes';
8478
+ };
8479
+ export type ListApiKeyScopesResponses = {
8480
+ /**
8481
+ * Success
8482
+ */
8483
+ 200: {
8484
+ data?: Array<ApiKeyScopeResponseObject>;
8485
+ };
8486
+ };
8487
+ export type ListApiKeyScopesResponse = ListApiKeyScopesResponses[keyof ListApiKeyScopesResponses];
8203
8488
  export type ListApprenticesData = {
8204
8489
  body?: never;
8205
8490
  path: {
@@ -9561,7 +9846,7 @@ export type CreateItemErrors = {
9561
9846
  export type CreateItemError = CreateItemErrors[keyof CreateItemErrors];
9562
9847
  export type CreateItemResponses = {
9563
9848
  /**
9564
- * Created with placement at site
9849
+ * Created with an image
9565
9850
  */
9566
9851
  201: AssetsItemResponseObject;
9567
9852
  };
@@ -9627,7 +9912,7 @@ export type UpdateItemErrors = {
9627
9912
  export type UpdateItemError = UpdateItemErrors[keyof UpdateItemErrors];
9628
9913
  export type UpdateItemResponses = {
9629
9914
  /**
9630
- * Success
9915
+ * Removes an image
9631
9916
  */
9632
9917
  200: AssetsItemResponseObject;
9633
9918
  };
@@ -10347,7 +10632,7 @@ export type CreateProductErrors = {
10347
10632
  export type CreateProductError = CreateProductErrors[keyof CreateProductErrors];
10348
10633
  export type CreateProductResponses = {
10349
10634
  /**
10350
- * Created (with category and attribute values)
10635
+ * Created (with an image)
10351
10636
  */
10352
10637
  201: AssetsProductResponseObject;
10353
10638
  };
@@ -10405,7 +10690,7 @@ export type GetProductResponses = {
10405
10690
  };
10406
10691
  export type GetProductResponse = GetProductResponses[keyof GetProductResponses];
10407
10692
  export type UpdateProductData = {
10408
- body: AssetsProductParameters;
10693
+ body: AssetsProductUpdateParameters;
10409
10694
  path: {
10410
10695
  id: string;
10411
10696
  };
@@ -10885,6 +11170,10 @@ export type CreateTransferData = {
10885
11170
  url: '/api/v1/assets/transfers';
10886
11171
  };
10887
11172
  export type CreateTransferErrors = {
11173
+ /**
11174
+ * Bad Request
11175
+ */
11176
+ 400: ErrorsObject;
10888
11177
  /**
10889
11178
  * Forbidden
10890
11179
  */
@@ -10980,11 +11269,15 @@ export type CreateVendorErrors = {
10980
11269
  * Forbidden
10981
11270
  */
10982
11271
  403: ErrorsObject;
11272
+ /**
11273
+ * Unprocessable Content (non-image logo)
11274
+ */
11275
+ 422: ErrorsObject;
10983
11276
  };
10984
11277
  export type CreateVendorError = CreateVendorErrors[keyof CreateVendorErrors];
10985
11278
  export type CreateVendorResponses = {
10986
11279
  /**
10987
- * Created
11280
+ * Created with a logo
10988
11281
  */
10989
11282
  201: AssetsVendorResponseObject;
10990
11283
  };
@@ -11050,7 +11343,7 @@ export type UpdateVendorErrors = {
11050
11343
  export type UpdateVendorError = UpdateVendorErrors[keyof UpdateVendorErrors];
11051
11344
  export type UpdateVendorResponses = {
11052
11345
  /**
11053
- * Success
11346
+ * Updated with a logo
11054
11347
  */
11055
11348
  200: AssetsVendorResponseObject;
11056
11349
  };
@@ -11881,7 +12174,7 @@ export type ListChecksData = {
11881
12174
  /**
11882
12175
  * Filter by check status
11883
12176
  */
11884
- 'filter[status]'?: 'passed' | 'failed' | 'not_applicable' | 'dismissed' | 'pending' | 'error';
12177
+ 'filter[status]'?: 'passed' | 'failed' | 'not_applicable' | 'dismissed' | 'pending';
11885
12178
  /**
11886
12179
  * Filter by check target type
11887
12180
  */
@@ -12726,11 +13019,52 @@ export type CreateJobTradeResponses = {
12726
13019
  201: PwaTradeResponseObject;
12727
13020
  };
12728
13021
  export type CreateJobTradeResponse = CreateJobTradeResponses[keyof CreateJobTradeResponses];
13022
+ export type ListRateRuleHistoryData = {
13023
+ body?: never;
13024
+ path: {
13025
+ job_id: string;
13026
+ wage_determination_uid: string;
13027
+ /**
13028
+ * The rule's version-stable identity, as returned in `uid`.
13029
+ */
13030
+ rate_rule_uid: string;
13031
+ };
13032
+ query?: {
13033
+ 'as_of[valid]'?: string;
13034
+ };
13035
+ url: '/api/v1/jobs/{job_id}/wage_determinations/{wage_determination_uid}/rate_rules/{rate_rule_uid}/history';
13036
+ };
13037
+ export type ListRateRuleHistoryErrors = {
13038
+ /**
13039
+ * Bad Request
13040
+ */
13041
+ 400: ErrorsObject;
13042
+ /**
13043
+ * Forbidden
13044
+ */
13045
+ 403: ErrorsObject;
13046
+ /**
13047
+ * Not Found
13048
+ */
13049
+ 404: ErrorsObject;
13050
+ };
13051
+ export type ListRateRuleHistoryError = ListRateRuleHistoryErrors[keyof ListRateRuleHistoryErrors];
13052
+ export type ListRateRuleHistoryResponses = {
13053
+ /**
13054
+ * Success
13055
+ */
13056
+ 200: {
13057
+ meta?: Meta;
13058
+ links?: Links;
13059
+ data?: Array<RateRuleHistoryVersionObject>;
13060
+ };
13061
+ };
13062
+ export type ListRateRuleHistoryResponse = ListRateRuleHistoryResponses[keyof ListRateRuleHistoryResponses];
12729
13063
  export type ListRateRulesData = {
12730
13064
  body?: never;
12731
13065
  path: {
12732
13066
  job_id: string;
12733
- wage_determination_id: string;
13067
+ wage_determination_uid: string;
12734
13068
  };
12735
13069
  query?: {
12736
13070
  /**
@@ -12742,7 +13076,7 @@ export type ListRateRulesData = {
12742
13076
  'as_of[valid][gte]'?: string;
12743
13077
  'as_of[transaction]'?: string;
12744
13078
  };
12745
- url: '/api/v1/jobs/{job_id}/wage_determinations/{wage_determination_id}/rate_rules';
13079
+ url: '/api/v1/jobs/{job_id}/wage_determinations/{wage_determination_uid}/rate_rules';
12746
13080
  };
12747
13081
  export type ListRateRulesErrors = {
12748
13082
  /**
@@ -12774,10 +13108,10 @@ export type CreateRateRuleData = {
12774
13108
  body: RateRuleParameters;
12775
13109
  path: {
12776
13110
  job_id: string;
12777
- wage_determination_id: string;
13111
+ wage_determination_uid: string;
12778
13112
  };
12779
13113
  query?: never;
12780
- url: '/api/v1/jobs/{job_id}/wage_determinations/{wage_determination_id}/rate_rules';
13114
+ url: '/api/v1/jobs/{job_id}/wage_determinations/{wage_determination_uid}/rate_rules';
12781
13115
  };
12782
13116
  export type CreateRateRuleErrors = {
12783
13117
  /**
@@ -12801,11 +13135,16 @@ export type GetRateRuleData = {
12801
13135
  body?: never;
12802
13136
  path: {
12803
13137
  job_id: string;
12804
- wage_determination_id: string;
12805
- id: string;
13138
+ wage_determination_uid: string;
13139
+ uid: string;
12806
13140
  };
12807
- query?: never;
12808
- url: '/api/v1/jobs/{job_id}/wage_determinations/{wage_determination_id}/rate_rules/{id}';
13141
+ query?: {
13142
+ /**
13143
+ * Read the version valid at this point in time. Defaults to now.
13144
+ */
13145
+ 'as_of[valid]'?: string;
13146
+ };
13147
+ url: '/api/v1/jobs/{job_id}/wage_determinations/{wage_determination_uid}/rate_rules/{uid}';
12809
13148
  };
12810
13149
  export type GetRateRuleErrors = {
12811
13150
  /**
@@ -12825,6 +13164,46 @@ export type GetRateRuleResponses = {
12825
13164
  200: RateRuleResponseObject;
12826
13165
  };
12827
13166
  export type GetRateRuleResponse = GetRateRuleResponses[keyof GetRateRuleResponses];
13167
+ export type ListJobWageDeterminationHistoryData = {
13168
+ body?: never;
13169
+ path: {
13170
+ job_id: string;
13171
+ /**
13172
+ * The determination's version-stable identity, as returned in `uid`.
13173
+ */
13174
+ wage_determination_uid: string;
13175
+ };
13176
+ query?: {
13177
+ 'as_of[valid]'?: string;
13178
+ };
13179
+ url: '/api/v1/jobs/{job_id}/wage_determinations/{wage_determination_uid}/history';
13180
+ };
13181
+ export type ListJobWageDeterminationHistoryErrors = {
13182
+ /**
13183
+ * Bad Request
13184
+ */
13185
+ 400: ErrorsObject;
13186
+ /**
13187
+ * Forbidden
13188
+ */
13189
+ 403: ErrorsObject;
13190
+ /**
13191
+ * Not Found
13192
+ */
13193
+ 404: ErrorsObject;
13194
+ };
13195
+ export type ListJobWageDeterminationHistoryError = ListJobWageDeterminationHistoryErrors[keyof ListJobWageDeterminationHistoryErrors];
13196
+ export type ListJobWageDeterminationHistoryResponses = {
13197
+ /**
13198
+ * Success
13199
+ */
13200
+ 200: {
13201
+ meta?: Meta;
13202
+ links?: Links;
13203
+ data?: Array<JobWageDeterminationHistoryVersionObject>;
13204
+ };
13205
+ };
13206
+ export type ListJobWageDeterminationHistoryResponse = ListJobWageDeterminationHistoryResponses[keyof ListJobWageDeterminationHistoryResponses];
12828
13207
  export type ListJobWageDeterminationsData = {
12829
13208
  body?: never;
12830
13209
  path: {
@@ -12898,10 +13277,10 @@ export type DeleteWageDeterminationData = {
12898
13277
  body?: never;
12899
13278
  path: {
12900
13279
  job_id: string;
12901
- id: string;
13280
+ uid: string;
12902
13281
  };
12903
13282
  query?: never;
12904
- url: '/api/v1/jobs/{job_id}/wage_determinations/{id}';
13283
+ url: '/api/v1/jobs/{job_id}/wage_determinations/{uid}';
12905
13284
  };
12906
13285
  export type DeleteWageDeterminationErrors = {
12907
13286
  /**
@@ -12929,10 +13308,15 @@ export type GetJobWageDeterminationData = {
12929
13308
  body?: never;
12930
13309
  path: {
12931
13310
  job_id: string;
12932
- id: string;
13311
+ uid: string;
12933
13312
  };
12934
- query?: never;
12935
- url: '/api/v1/jobs/{job_id}/wage_determinations/{id}';
13313
+ query?: {
13314
+ /**
13315
+ * Read the version valid at this point in time. Defaults to now.
13316
+ */
13317
+ 'as_of[valid]'?: string;
13318
+ };
13319
+ url: '/api/v1/jobs/{job_id}/wage_determinations/{uid}';
12936
13320
  };
12937
13321
  export type GetJobWageDeterminationErrors = {
12938
13322
  /**
@@ -13189,6 +13573,49 @@ export type GetCompensationElementResponses = {
13189
13573
  200: CompensationElementResponseObject;
13190
13574
  };
13191
13575
  export type GetCompensationElementResponse = GetCompensationElementResponses[keyof GetCompensationElementResponses];
13576
+ export type ListExternalMapHistoryData = {
13577
+ body?: never;
13578
+ path: {
13579
+ /**
13580
+ * The external map's version-stable identity, as returned in `bitemporal_id`.
13581
+ */
13582
+ external_map_id: string;
13583
+ };
13584
+ query?: {
13585
+ /**
13586
+ * Read the timeline as it was recorded at this moment. Defaults to now.
13587
+ */
13588
+ 'as_of[transaction]'?: string;
13589
+ 'as_of[valid]'?: string;
13590
+ };
13591
+ url: '/api/v1/payrolls/external_maps/{external_map_id}/history';
13592
+ };
13593
+ export type ListExternalMapHistoryErrors = {
13594
+ /**
13595
+ * Bad Request
13596
+ */
13597
+ 400: ErrorsObject;
13598
+ /**
13599
+ * Forbidden
13600
+ */
13601
+ 403: ErrorsObject;
13602
+ /**
13603
+ * Not Found
13604
+ */
13605
+ 404: ErrorsObject;
13606
+ };
13607
+ export type ListExternalMapHistoryError = ListExternalMapHistoryErrors[keyof ListExternalMapHistoryErrors];
13608
+ export type ListExternalMapHistoryResponses = {
13609
+ /**
13610
+ * Success
13611
+ */
13612
+ 200: {
13613
+ meta?: Meta;
13614
+ links?: Links;
13615
+ data?: Array<PayrollExternalMapHistoryVersionObject>;
13616
+ };
13617
+ };
13618
+ export type ListExternalMapHistoryResponse = ListExternalMapHistoryResponses[keyof ListExternalMapHistoryResponses];
13192
13619
  export type ListExternalMapsData = {
13193
13620
  body?: never;
13194
13621
  path?: never;
@@ -13262,7 +13689,16 @@ export type GetExternalMapData = {
13262
13689
  path: {
13263
13690
  id: string;
13264
13691
  };
13265
- query?: never;
13692
+ query?: {
13693
+ /**
13694
+ * Read the version valid at this point in time. Defaults to now.
13695
+ */
13696
+ 'as_of[valid]'?: string;
13697
+ /**
13698
+ * Read the version as it was recorded at this point in transaction time. Defaults to now.
13699
+ */
13700
+ 'as_of[transaction]'?: string;
13701
+ };
13266
13702
  url: '/api/v1/payrolls/external_maps/{id}';
13267
13703
  };
13268
13704
  export type GetExternalMapErrors = {
@@ -15471,6 +15907,49 @@ export type UpdateTimeEntryResponses = {
15471
15907
  200: TimeEntryResponseObject;
15472
15908
  };
15473
15909
  export type UpdateTimeEntryResponse = UpdateTimeEntryResponses[keyof UpdateTimeEntryResponses];
15910
+ export type ListTimecodeHistoryData = {
15911
+ body?: never;
15912
+ path: {
15913
+ /**
15914
+ * The timecode's version-stable identity, as returned in `id`.
15915
+ */
15916
+ timecode_id: string;
15917
+ };
15918
+ query?: {
15919
+ /**
15920
+ * Read the timeline as it was recorded at this moment. Defaults to now.
15921
+ */
15922
+ 'as_of[transaction]'?: string;
15923
+ 'as_of[valid]'?: string;
15924
+ };
15925
+ url: '/api/v1/timecodes/{timecode_id}/history';
15926
+ };
15927
+ export type ListTimecodeHistoryErrors = {
15928
+ /**
15929
+ * Bad Request
15930
+ */
15931
+ 400: ErrorsObject;
15932
+ /**
15933
+ * Forbidden
15934
+ */
15935
+ 403: ErrorsObject;
15936
+ /**
15937
+ * Not Found
15938
+ */
15939
+ 404: ErrorsObject;
15940
+ };
15941
+ export type ListTimecodeHistoryError = ListTimecodeHistoryErrors[keyof ListTimecodeHistoryErrors];
15942
+ export type ListTimecodeHistoryResponses = {
15943
+ /**
15944
+ * Success
15945
+ */
15946
+ 200: {
15947
+ meta?: Meta;
15948
+ links?: Links;
15949
+ data?: Array<TimecodeHistoryVersionObject>;
15950
+ };
15951
+ };
15952
+ export type ListTimecodeHistoryResponse = ListTimecodeHistoryResponses[keyof ListTimecodeHistoryResponses];
15474
15953
  export type CancelTimecodeScheduledChangesData = {
15475
15954
  body?: never;
15476
15955
  path: {
@@ -15708,7 +16187,16 @@ export type GetTimecodeData = {
15708
16187
  */
15709
16188
  id: string;
15710
16189
  };
15711
- query?: never;
16190
+ query?: {
16191
+ /**
16192
+ * Read the version valid at this point in time. Defaults to now.
16193
+ */
16194
+ 'as_of[valid]'?: string;
16195
+ /**
16196
+ * Read the version as it was recorded at this point in transaction time. Defaults to now.
16197
+ */
16198
+ 'as_of[transaction]'?: string;
16199
+ };
15712
16200
  url: '/api/v1/timecodes/{id}';
15713
16201
  };
15714
16202
  export type GetTimecodeErrors = {
@@ -15982,6 +16470,45 @@ export type GetAttestationConfigResponses = {
15982
16470
  200: AttestationConfigResponseObject;
15983
16471
  };
15984
16472
  export type GetAttestationConfigResponse = GetAttestationConfigResponses[keyof GetAttestationConfigResponses];
16473
+ export type ListPayPeriodConfigHistoryData = {
16474
+ body?: never;
16475
+ path: {
16476
+ /**
16477
+ * The pay schedule's version-stable identity, as returned in `uid`.
16478
+ */
16479
+ pay_period_config_uid: string;
16480
+ };
16481
+ query?: {
16482
+ 'as_of[valid]'?: string;
16483
+ };
16484
+ url: '/api/v1/timekeeping/pay_period_configs/{pay_period_config_uid}/history';
16485
+ };
16486
+ export type ListPayPeriodConfigHistoryErrors = {
16487
+ /**
16488
+ * Bad Request
16489
+ */
16490
+ 400: ErrorsObject;
16491
+ /**
16492
+ * Forbidden
16493
+ */
16494
+ 403: ErrorsObject;
16495
+ /**
16496
+ * Not Found
16497
+ */
16498
+ 404: ErrorsObject;
16499
+ };
16500
+ export type ListPayPeriodConfigHistoryError = ListPayPeriodConfigHistoryErrors[keyof ListPayPeriodConfigHistoryErrors];
16501
+ export type ListPayPeriodConfigHistoryResponses = {
16502
+ /**
16503
+ * Success
16504
+ */
16505
+ 200: {
16506
+ meta?: Meta;
16507
+ links?: Links;
16508
+ data?: Array<PayPeriodConfigHistoryVersionObject>;
16509
+ };
16510
+ };
16511
+ export type ListPayPeriodConfigHistoryResponse = ListPayPeriodConfigHistoryResponses[keyof ListPayPeriodConfigHistoryResponses];
15985
16512
  export type ListHolidaysData = {
15986
16513
  body?: never;
15987
16514
  path: {
@@ -16193,7 +16720,12 @@ export type GetPayPeriodConfigData = {
16193
16720
  path: {
16194
16721
  uid: string;
16195
16722
  };
16196
- query?: never;
16723
+ query?: {
16724
+ /**
16725
+ * Read the version valid at this point in time. Defaults to now.
16726
+ */
16727
+ 'as_of[valid]'?: string;
16728
+ };
16197
16729
  url: '/api/v1/timekeeping/pay_period_configs/{uid}';
16198
16730
  };
16199
16731
  export type GetPayPeriodConfigErrors = {