@conflict-hq/ezacto-client 0.1.1 → 0.1.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/generated.d.ts +1554 -42
- package/dist/generated.js +609 -1
- package/package.json +1 -1
- package/src/generated.ts +2021 -114
package/src/generated.ts
CHANGED
|
@@ -13,6 +13,11 @@ export type Attachment = {
|
|
|
13
13
|
"uploaded_by_user_id": number | null;
|
|
14
14
|
"created_at": string;
|
|
15
15
|
"updated_at": string;
|
|
16
|
+
"through"?: string | null;
|
|
17
|
+
};
|
|
18
|
+
|
|
19
|
+
export type RecurringAttachmentThroughInput = {
|
|
20
|
+
"through": string | null;
|
|
16
21
|
};
|
|
17
22
|
|
|
18
23
|
export type AttachmentEnvelope = {
|
|
@@ -25,6 +30,245 @@ export type AttachmentListEnvelope = {
|
|
|
25
30
|
"links": Links;
|
|
26
31
|
};
|
|
27
32
|
|
|
33
|
+
export type PaymentActualsEnvelope = {
|
|
34
|
+
"data": {
|
|
35
|
+
"month": string;
|
|
36
|
+
"currency": string;
|
|
37
|
+
"completed": boolean;
|
|
38
|
+
"people": Array<{
|
|
39
|
+
"user_id": number;
|
|
40
|
+
"name": string;
|
|
41
|
+
"entries": Array<{
|
|
42
|
+
"entry_id": number;
|
|
43
|
+
"project_id": number;
|
|
44
|
+
"project_name": string;
|
|
45
|
+
"spent_date": string;
|
|
46
|
+
"rounded_seconds": number;
|
|
47
|
+
"cost_rate_cents": number | null;
|
|
48
|
+
"selected_seconds": number;
|
|
49
|
+
}>;
|
|
50
|
+
}>;
|
|
51
|
+
};
|
|
52
|
+
};
|
|
53
|
+
|
|
54
|
+
export type ConfirmPaymentActuals = {
|
|
55
|
+
"id": string;
|
|
56
|
+
"user_id": number;
|
|
57
|
+
"month": string;
|
|
58
|
+
"expected_version": number;
|
|
59
|
+
"currency": string;
|
|
60
|
+
"entries": Array<{
|
|
61
|
+
"entry_id": number;
|
|
62
|
+
"project_id": number;
|
|
63
|
+
"project_name": string;
|
|
64
|
+
"spent_date": string;
|
|
65
|
+
"rounded_seconds": number;
|
|
66
|
+
"cost_rate_cents": number | null;
|
|
67
|
+
"selected_seconds": number;
|
|
68
|
+
}>;
|
|
69
|
+
"note": string;
|
|
70
|
+
};
|
|
71
|
+
|
|
72
|
+
export type StaffPaymentProviderCommand = {
|
|
73
|
+
"id": string;
|
|
74
|
+
"user_id": number | null;
|
|
75
|
+
"expected_version": number;
|
|
76
|
+
"provider": "wise" | "deel" | null;
|
|
77
|
+
"note": string;
|
|
78
|
+
};
|
|
79
|
+
|
|
80
|
+
export type StaffPaymentProviderEvent = {
|
|
81
|
+
"id": string;
|
|
82
|
+
"user_id": number | null;
|
|
83
|
+
"expected_version": number;
|
|
84
|
+
"provider": "wise" | "deel" | null;
|
|
85
|
+
"note": string;
|
|
86
|
+
"version": number;
|
|
87
|
+
"actor_id": number;
|
|
88
|
+
"actor_name": string;
|
|
89
|
+
"recorded_at": string;
|
|
90
|
+
"request_id": string;
|
|
91
|
+
};
|
|
92
|
+
|
|
93
|
+
export type StaffPaymentProviderSettings = {
|
|
94
|
+
"default_provider": "wise" | "deel";
|
|
95
|
+
"version": number;
|
|
96
|
+
"events": Array<StaffPaymentProviderEvent>;
|
|
97
|
+
};
|
|
98
|
+
|
|
99
|
+
export type StaffPaymentCommand = {
|
|
100
|
+
"id": string;
|
|
101
|
+
"user_id": number;
|
|
102
|
+
"month": string;
|
|
103
|
+
"expected_version": number;
|
|
104
|
+
"kind": "amount" | "payment" | "void" | "opening" | "reopen" | "note";
|
|
105
|
+
"amount_cents": number | null;
|
|
106
|
+
"currency": string | null;
|
|
107
|
+
"paid_on": string | null;
|
|
108
|
+
"due_on": string | null;
|
|
109
|
+
"reference": string;
|
|
110
|
+
"note": string;
|
|
111
|
+
"payment_id": string | null;
|
|
112
|
+
"source": "wise" | "deel" | "historical";
|
|
113
|
+
};
|
|
114
|
+
|
|
115
|
+
export type StaffPaymentEvent = {
|
|
116
|
+
"id": string;
|
|
117
|
+
"user_id": number;
|
|
118
|
+
"month": string;
|
|
119
|
+
"expected_version": number;
|
|
120
|
+
"kind": "amount" | "payment" | "void" | "opening" | "reopen" | "note";
|
|
121
|
+
"amount_cents": number | null;
|
|
122
|
+
"currency": string | null;
|
|
123
|
+
"paid_on": string | null;
|
|
124
|
+
"due_on": string | null;
|
|
125
|
+
"reference": string;
|
|
126
|
+
"note": string;
|
|
127
|
+
"payment_id": string | null;
|
|
128
|
+
"source": "wise" | "deel" | "historical";
|
|
129
|
+
"version": number;
|
|
130
|
+
"actor_id": number;
|
|
131
|
+
"actor_name": string;
|
|
132
|
+
"recorded_at": string;
|
|
133
|
+
"request_id": string;
|
|
134
|
+
};
|
|
135
|
+
|
|
136
|
+
export type StaffPaymentRow = {
|
|
137
|
+
"user_id": number;
|
|
138
|
+
"name": string;
|
|
139
|
+
"active": boolean;
|
|
140
|
+
"wise_ready": boolean;
|
|
141
|
+
"deel_ready": boolean;
|
|
142
|
+
"payout_provider": "wise" | "deel";
|
|
143
|
+
"provider_override": "wise" | "deel" | null;
|
|
144
|
+
"provider_version": number;
|
|
145
|
+
"month": string;
|
|
146
|
+
"version": number;
|
|
147
|
+
"amount_cents": number | null;
|
|
148
|
+
"currency": string | null;
|
|
149
|
+
"has_hours": boolean;
|
|
150
|
+
"amount_basis": "ledger" | "contractor_cost";
|
|
151
|
+
"paid_cents": number;
|
|
152
|
+
"balance_cents": number | null;
|
|
153
|
+
"reserved_cents": number;
|
|
154
|
+
"available_cents": number | null;
|
|
155
|
+
"due_on": string | null;
|
|
156
|
+
"settled_through": string | null;
|
|
157
|
+
"status": "in_progress" | "pending" | "partial" | "paid" | "settled";
|
|
158
|
+
"overdue": boolean;
|
|
159
|
+
"events": Array<StaffPaymentEvent>;
|
|
160
|
+
};
|
|
161
|
+
|
|
162
|
+
export type StaffPaymentReport = {
|
|
163
|
+
"month": string;
|
|
164
|
+
"as_of": string;
|
|
165
|
+
"rows": Array<StaffPaymentRow>;
|
|
166
|
+
"provider_settings": StaffPaymentProviderSettings;
|
|
167
|
+
};
|
|
168
|
+
|
|
169
|
+
export type StaffPaymentReportEnvelope = {
|
|
170
|
+
"data": StaffPaymentReport;
|
|
171
|
+
};
|
|
172
|
+
|
|
173
|
+
export type PaymentSelection = {
|
|
174
|
+
"user_id": number;
|
|
175
|
+
"month": string;
|
|
176
|
+
"amount_cents": number;
|
|
177
|
+
"expected_version": number;
|
|
178
|
+
};
|
|
179
|
+
|
|
180
|
+
export type PaymentRunCommand = {
|
|
181
|
+
"id": string;
|
|
182
|
+
"name": string;
|
|
183
|
+
"source_currency": string;
|
|
184
|
+
"scheduled_at": string;
|
|
185
|
+
"timezone": string;
|
|
186
|
+
"items": Array<PaymentSelection>;
|
|
187
|
+
};
|
|
188
|
+
|
|
189
|
+
export type PaymentQuote = {
|
|
190
|
+
"id": string;
|
|
191
|
+
"profile_id": string;
|
|
192
|
+
"recipient_id": string;
|
|
193
|
+
"recipient_name": string;
|
|
194
|
+
"source_currency": string;
|
|
195
|
+
"target_currency": string;
|
|
196
|
+
"target_cents": number;
|
|
197
|
+
"source_cents": number;
|
|
198
|
+
"fee_cents": number;
|
|
199
|
+
"rate": number;
|
|
200
|
+
"expires_at": string;
|
|
201
|
+
"estimated_arrival": string | null;
|
|
202
|
+
};
|
|
203
|
+
|
|
204
|
+
export type PaymentDestination = {
|
|
205
|
+
"id": number;
|
|
206
|
+
"external_id": string;
|
|
207
|
+
"kind": "account" | "contact";
|
|
208
|
+
};
|
|
209
|
+
|
|
210
|
+
export type PaymentItem = {
|
|
211
|
+
"user_id": number;
|
|
212
|
+
"month": string;
|
|
213
|
+
"amount_cents": number;
|
|
214
|
+
"expected_version": number;
|
|
215
|
+
"id": string;
|
|
216
|
+
"run_id": string;
|
|
217
|
+
"name": string;
|
|
218
|
+
"currency": string;
|
|
219
|
+
"destination": PaymentDestination;
|
|
220
|
+
"quote": PaymentQuote;
|
|
221
|
+
"execution_quote": PaymentQuote | null;
|
|
222
|
+
"max_source_cents": number;
|
|
223
|
+
"state": "draft" | "queued" | "creating" | "funding" | "processing" | "paid" | "failed" | "attention" | "cancelled";
|
|
224
|
+
"transfer_id": string | null;
|
|
225
|
+
"provider_status": string | null;
|
|
226
|
+
"failure": string | null;
|
|
227
|
+
"attempts": number;
|
|
228
|
+
"next_attempt_at": string;
|
|
229
|
+
"updated_at": string;
|
|
230
|
+
"version": number;
|
|
231
|
+
"lease_token": string | null;
|
|
232
|
+
"lease_until": string | null;
|
|
233
|
+
};
|
|
234
|
+
|
|
235
|
+
export type PaymentRun = {
|
|
236
|
+
"id": string;
|
|
237
|
+
"name": string;
|
|
238
|
+
"source_currency": string;
|
|
239
|
+
"scheduled_at": string;
|
|
240
|
+
"timezone": string;
|
|
241
|
+
"state": "draft" | "approved" | "cancelled";
|
|
242
|
+
"actor_id": number;
|
|
243
|
+
"approved_by": number | null;
|
|
244
|
+
"created_at": string;
|
|
245
|
+
"approved_at": string | null;
|
|
246
|
+
"request_id": string;
|
|
247
|
+
"items": Array<PaymentItem>;
|
|
248
|
+
};
|
|
249
|
+
|
|
250
|
+
export type PaymentRunApproval = {
|
|
251
|
+
"limits": Array<{
|
|
252
|
+
"item_id": string;
|
|
253
|
+
"max_source_cents": number;
|
|
254
|
+
}>;
|
|
255
|
+
};
|
|
256
|
+
|
|
257
|
+
export type PaymentRunEnvelope = {
|
|
258
|
+
"data": PaymentRun;
|
|
259
|
+
};
|
|
260
|
+
|
|
261
|
+
export type PaymentRunReport = {
|
|
262
|
+
"from": string;
|
|
263
|
+
"to": string;
|
|
264
|
+
"ledgers": Array<StaffPaymentReport>;
|
|
265
|
+
"runs": Array<PaymentRun>;
|
|
266
|
+
};
|
|
267
|
+
|
|
268
|
+
export type PaymentRunReportEnvelope = {
|
|
269
|
+
"data": PaymentRunReport;
|
|
270
|
+
};
|
|
271
|
+
|
|
28
272
|
export type InvoiceReminderPolicy = {
|
|
29
273
|
"first_after_days": number;
|
|
30
274
|
"every_days": number;
|
|
@@ -123,6 +367,7 @@ export type EmailLog = {
|
|
|
123
367
|
"from": EmailRecipient | null;
|
|
124
368
|
"reply_to": Array<EmailRecipient>;
|
|
125
369
|
"to": Array<EmailRecipient>;
|
|
370
|
+
"cc": Array<EmailRecipient>;
|
|
126
371
|
"template": string;
|
|
127
372
|
"subject": string;
|
|
128
373
|
"provider": string | null;
|
|
@@ -304,6 +549,92 @@ export type QuickBooksAuthorizeEnvelope = {
|
|
|
304
549
|
};
|
|
305
550
|
};
|
|
306
551
|
|
|
552
|
+
export type WiseConnection = {
|
|
553
|
+
"profile_id": string;
|
|
554
|
+
"profile_name": string | null;
|
|
555
|
+
"payable_recipients": number;
|
|
556
|
+
"webhooks_verifiable": boolean;
|
|
557
|
+
};
|
|
558
|
+
|
|
559
|
+
export type WiseRecipient = {
|
|
560
|
+
"id": string;
|
|
561
|
+
"holder_name": string | null;
|
|
562
|
+
"currency": string;
|
|
563
|
+
"type": string;
|
|
564
|
+
"masked_summary": string | null;
|
|
565
|
+
"email": string | null;
|
|
566
|
+
};
|
|
567
|
+
|
|
568
|
+
export type WiseStatusEnvelope = {
|
|
569
|
+
"data": {
|
|
570
|
+
"configured": boolean;
|
|
571
|
+
"connection": WiseConnection | null;
|
|
572
|
+
};
|
|
573
|
+
};
|
|
574
|
+
|
|
575
|
+
export type WiseRecipientListEnvelope = {
|
|
576
|
+
"data": Array<WiseRecipient>;
|
|
577
|
+
};
|
|
578
|
+
|
|
579
|
+
export type WiseOnboardInput = {
|
|
580
|
+
"user_id": number;
|
|
581
|
+
"email": string;
|
|
582
|
+
"legal_name": string;
|
|
583
|
+
"currency": string;
|
|
584
|
+
};
|
|
585
|
+
|
|
586
|
+
export type WiseDestinationEnvelope = {
|
|
587
|
+
"data": {
|
|
588
|
+
"configured": boolean;
|
|
589
|
+
"destination": {
|
|
590
|
+
"id": number;
|
|
591
|
+
"kind": "account" | "contact";
|
|
592
|
+
"linked_at": string;
|
|
593
|
+
"linked_by_user_id": number;
|
|
594
|
+
"verified_at": string | null;
|
|
595
|
+
} | null;
|
|
596
|
+
};
|
|
597
|
+
};
|
|
598
|
+
|
|
599
|
+
export type WiseProposal = {
|
|
600
|
+
"user_id": number;
|
|
601
|
+
"name": string;
|
|
602
|
+
"payroll_email": string | null;
|
|
603
|
+
"matches": Array<WiseRecipient>;
|
|
604
|
+
};
|
|
605
|
+
|
|
606
|
+
export type WiseProposalListEnvelope = {
|
|
607
|
+
"data": Array<WiseProposal>;
|
|
608
|
+
};
|
|
609
|
+
|
|
610
|
+
export type WiseContactInput = {
|
|
611
|
+
"user_id": number;
|
|
612
|
+
"identifier": string;
|
|
613
|
+
"currency": string;
|
|
614
|
+
};
|
|
615
|
+
|
|
616
|
+
export type WiseContactEnvelope = {
|
|
617
|
+
"data": {
|
|
618
|
+
"user_id": number;
|
|
619
|
+
"contact": {
|
|
620
|
+
"id": string;
|
|
621
|
+
"name": string | null;
|
|
622
|
+
};
|
|
623
|
+
};
|
|
624
|
+
};
|
|
625
|
+
|
|
626
|
+
export type WiseLinkInput = {
|
|
627
|
+
"user_id": number;
|
|
628
|
+
"recipient_id": string;
|
|
629
|
+
};
|
|
630
|
+
|
|
631
|
+
export type WiseLinkEnvelope = {
|
|
632
|
+
"data": {
|
|
633
|
+
"user_id": number;
|
|
634
|
+
"recipient": WiseRecipient;
|
|
635
|
+
};
|
|
636
|
+
};
|
|
637
|
+
|
|
307
638
|
export type QuickBooksConnectionEnvelope = {
|
|
308
639
|
"data": QuickBooksConnection | null;
|
|
309
640
|
};
|
|
@@ -312,6 +643,26 @@ export type QuickBooksSettingsInput = {
|
|
|
312
643
|
"allow_online_payment": boolean;
|
|
313
644
|
};
|
|
314
645
|
|
|
646
|
+
export type InvoiceQuickBooksEnvelope = {
|
|
647
|
+
"data": {
|
|
648
|
+
"connected": boolean;
|
|
649
|
+
"invoice": {
|
|
650
|
+
"quickbooks_id": string;
|
|
651
|
+
"mirrored_at": string;
|
|
652
|
+
} | null;
|
|
653
|
+
"payments": Array<{
|
|
654
|
+
"payment_id": number;
|
|
655
|
+
"quickbooks_id": string;
|
|
656
|
+
"mirrored_at": string;
|
|
657
|
+
}>;
|
|
658
|
+
"last_outcome": {
|
|
659
|
+
"kind": "created" | "updated" | "adopted" | "linked" | "refused" | "failed";
|
|
660
|
+
"reason": string | null;
|
|
661
|
+
"at": string;
|
|
662
|
+
} | null;
|
|
663
|
+
};
|
|
664
|
+
};
|
|
665
|
+
|
|
315
666
|
export type SenderEvidenceRefreshInput = {
|
|
316
667
|
"expected_evidence_version": number;
|
|
317
668
|
};
|
|
@@ -344,10 +695,17 @@ export type OutboxAggregate = {
|
|
|
344
695
|
"sequence": number;
|
|
345
696
|
};
|
|
346
697
|
|
|
698
|
+
export type ActivityLogActor = {
|
|
699
|
+
"type": "user" | "contact" | "system";
|
|
700
|
+
"id": number | null;
|
|
701
|
+
"name": string | null;
|
|
702
|
+
};
|
|
703
|
+
|
|
347
704
|
export type ActivityLog = {
|
|
348
705
|
"event_id": string;
|
|
349
706
|
"event_type": string;
|
|
350
707
|
"aggregate": OutboxAggregate;
|
|
708
|
+
"actor": ActivityLogActor | null;
|
|
351
709
|
"payload": {
|
|
352
710
|
[key: string]: unknown;
|
|
353
711
|
};
|
|
@@ -689,6 +1047,11 @@ export type TeamRateInput = {
|
|
|
689
1047
|
"start_date": string | null;
|
|
690
1048
|
};
|
|
691
1049
|
|
|
1050
|
+
export type TeamRateRemovalInput = {
|
|
1051
|
+
"expected_version": number;
|
|
1052
|
+
"kind": "billable" | "cost";
|
|
1053
|
+
};
|
|
1054
|
+
|
|
692
1055
|
export type TeamCommandReceipt = {
|
|
693
1056
|
"target_user_id": number;
|
|
694
1057
|
"version": number;
|
|
@@ -776,6 +1139,7 @@ export type TimeEntry = {
|
|
|
776
1139
|
};
|
|
777
1140
|
|
|
778
1141
|
export type TimeEntryInput = {
|
|
1142
|
+
"user_id"?: number;
|
|
779
1143
|
"project_id": number;
|
|
780
1144
|
"task_id": number;
|
|
781
1145
|
"spent_date"?: string;
|
|
@@ -847,6 +1211,35 @@ export type TimeEntryNoteSettingsEnvelope = {
|
|
|
847
1211
|
"links": Links;
|
|
848
1212
|
};
|
|
849
1213
|
|
|
1214
|
+
export type Profile = {
|
|
1215
|
+
"user_id": number;
|
|
1216
|
+
"first_name"?: string;
|
|
1217
|
+
"last_name"?: string;
|
|
1218
|
+
"email"?: string | null;
|
|
1219
|
+
"timezone": string;
|
|
1220
|
+
"invoice_copy_to_self"?: boolean;
|
|
1221
|
+
};
|
|
1222
|
+
|
|
1223
|
+
export type ProfilePatch = {
|
|
1224
|
+
"timezone"?: string;
|
|
1225
|
+
"invoice_copy_to_self"?: boolean;
|
|
1226
|
+
};
|
|
1227
|
+
|
|
1228
|
+
export type ProfileEnvelope = {
|
|
1229
|
+
"data": Profile;
|
|
1230
|
+
"links": Links;
|
|
1231
|
+
};
|
|
1232
|
+
|
|
1233
|
+
export type AccountDeletionRequest = {
|
|
1234
|
+
"user_id": number;
|
|
1235
|
+
"requested_at": string;
|
|
1236
|
+
};
|
|
1237
|
+
|
|
1238
|
+
export type AccountDeletionRequestEnvelope = {
|
|
1239
|
+
"data": AccountDeletionRequest;
|
|
1240
|
+
"links": Links;
|
|
1241
|
+
};
|
|
1242
|
+
|
|
850
1243
|
export type TimeEntryOption = {
|
|
851
1244
|
"project_id": number;
|
|
852
1245
|
"task_id": number;
|
|
@@ -1280,12 +1673,46 @@ export type EstimateConversionEnvelope = {
|
|
|
1280
1673
|
};
|
|
1281
1674
|
|
|
1282
1675
|
export type InvoiceGenerationInput = {
|
|
1676
|
+
"kind"?: "tracked";
|
|
1283
1677
|
"client_id": number;
|
|
1284
|
-
"from"
|
|
1678
|
+
"from"?: string | null;
|
|
1285
1679
|
"to": string;
|
|
1286
1680
|
"project_ids": Array<number>;
|
|
1287
1681
|
"time_summary_type": "project" | "task" | "people" | "detailed" | null;
|
|
1288
1682
|
"expense_summary_type": "project" | "category" | "people" | "detailed" | null;
|
|
1683
|
+
} | {
|
|
1684
|
+
"kind": "free_form";
|
|
1685
|
+
"client_id": number;
|
|
1686
|
+
} | {
|
|
1687
|
+
"kind": "banded";
|
|
1688
|
+
"client_id": number;
|
|
1689
|
+
"from"?: string | null;
|
|
1690
|
+
"to": string;
|
|
1691
|
+
"project_ids": Array<number>;
|
|
1692
|
+
"line_items": Array<{
|
|
1693
|
+
"kind": string;
|
|
1694
|
+
"description"?: string | null;
|
|
1695
|
+
"quantity": number;
|
|
1696
|
+
"unit_price_cents": number;
|
|
1697
|
+
"project_id"?: number | null;
|
|
1698
|
+
}>;
|
|
1699
|
+
"claim_mode": "all" | "ceiling";
|
|
1700
|
+
"claim_ceiling_seconds"?: number | null;
|
|
1701
|
+
"claim_ceiling_cents"?: number | null;
|
|
1702
|
+
"overage_summary_type"?: "project" | "task" | "people" | "detailed" | null;
|
|
1703
|
+
};
|
|
1704
|
+
|
|
1705
|
+
export type InvoiceBandClaim = {
|
|
1706
|
+
"claimed_entry_count": number;
|
|
1707
|
+
"claimed_seconds": number;
|
|
1708
|
+
"billed_entry_count": number;
|
|
1709
|
+
"billed_seconds": number;
|
|
1710
|
+
};
|
|
1711
|
+
|
|
1712
|
+
export type InvoiceGenerationEnvelope = {
|
|
1713
|
+
"data": Invoice;
|
|
1714
|
+
"band"?: InvoiceBandClaim;
|
|
1715
|
+
"links": Links;
|
|
1289
1716
|
};
|
|
1290
1717
|
|
|
1291
1718
|
export type InvoiceCommandSnapshot = {
|
|
@@ -1387,6 +1814,7 @@ export type InvoiceMessage = {
|
|
|
1387
1814
|
"sent_from": string | null;
|
|
1388
1815
|
"sent_from_email": string | null;
|
|
1389
1816
|
"recipients": Array<InvoiceRecipient>;
|
|
1817
|
+
"cc": Array<InvoiceRecipient>;
|
|
1390
1818
|
"subject": string | null;
|
|
1391
1819
|
"body": string | null;
|
|
1392
1820
|
"attach_pdf": boolean;
|
|
@@ -1435,32 +1863,158 @@ export type InvoiceTransitionInput = {
|
|
|
1435
1863
|
export type InvoiceEmailDeliveryInput = {
|
|
1436
1864
|
"expected_version": number;
|
|
1437
1865
|
"recipients": Array<InvoiceRecipient>;
|
|
1866
|
+
"cc"?: Array<InvoiceRecipient>;
|
|
1867
|
+
"subject"?: string;
|
|
1868
|
+
"message"?: string;
|
|
1869
|
+
"send_me_a_copy"?: boolean;
|
|
1438
1870
|
"sender_identity_id"?: number;
|
|
1439
1871
|
"template_version"?: number;
|
|
1440
1872
|
"confirmed": true;
|
|
1441
1873
|
};
|
|
1442
1874
|
|
|
1443
|
-
export type
|
|
1444
|
-
"
|
|
1875
|
+
export type InvoiceEmailPreviewInput = {
|
|
1876
|
+
"expected_version"?: number;
|
|
1877
|
+
"recipients": Array<InvoiceRecipient>;
|
|
1878
|
+
"cc"?: Array<InvoiceRecipient>;
|
|
1879
|
+
"subject"?: string;
|
|
1880
|
+
"message"?: string;
|
|
1881
|
+
"send_me_a_copy"?: boolean;
|
|
1882
|
+
"sender_identity_id"?: number;
|
|
1883
|
+
"template_version"?: number;
|
|
1884
|
+
"attach_pdf"?: boolean;
|
|
1885
|
+
"attach_files"?: boolean;
|
|
1886
|
+
"append_pdfs"?: boolean;
|
|
1887
|
+
"attach_journal"?: "detailed" | "summary" | false;
|
|
1888
|
+
"journal_formats"?: JournalFormats;
|
|
1889
|
+
};
|
|
1890
|
+
|
|
1891
|
+
export type InvoiceEmailPreviewAttachment = {
|
|
1892
|
+
"kind": "invoice" | "journal" | "file";
|
|
1893
|
+
"filename": string;
|
|
1894
|
+
"content_type": string;
|
|
1895
|
+
"byte_size": number;
|
|
1896
|
+
"appended": Array<string>;
|
|
1897
|
+
"not_appended": "encrypted" | "unreadable" | "empty" | "too_large" | null;
|
|
1898
|
+
};
|
|
1899
|
+
|
|
1900
|
+
export type InvoiceEmailPreviewEnvelope = {
|
|
1901
|
+
"data": {
|
|
1445
1902
|
"invoice_id": number;
|
|
1446
|
-
"
|
|
1447
|
-
"
|
|
1448
|
-
"
|
|
1449
|
-
"
|
|
1450
|
-
"
|
|
1451
|
-
"
|
|
1452
|
-
"
|
|
1453
|
-
"
|
|
1454
|
-
"
|
|
1455
|
-
|
|
1456
|
-
"
|
|
1457
|
-
"
|
|
1458
|
-
|
|
1903
|
+
"from": InvoiceRecipient;
|
|
1904
|
+
"reply_to": string | null;
|
|
1905
|
+
"to": Array<InvoiceRecipient>;
|
|
1906
|
+
"cc": Array<InvoiceRecipient>;
|
|
1907
|
+
"send_me_a_copy": boolean;
|
|
1908
|
+
"subject": string;
|
|
1909
|
+
"text": string;
|
|
1910
|
+
"html": string | null;
|
|
1911
|
+
"attachments": Array<InvoiceEmailPreviewAttachment>;
|
|
1912
|
+
};
|
|
1913
|
+
"links": {
|
|
1914
|
+
"document": string;
|
|
1915
|
+
};
|
|
1459
1916
|
};
|
|
1460
1917
|
|
|
1461
|
-
export type
|
|
1462
|
-
"data":
|
|
1463
|
-
"
|
|
1918
|
+
export type InvoiceEmailPreviewSentEnvelope = {
|
|
1919
|
+
"data": {
|
|
1920
|
+
"invoice_id": number;
|
|
1921
|
+
"delivery_id": number;
|
|
1922
|
+
"to": Array<InvoiceRecipient>;
|
|
1923
|
+
"subject": string;
|
|
1924
|
+
};
|
|
1925
|
+
};
|
|
1926
|
+
|
|
1927
|
+
export type InvoiceEmailDefaultsEnvelope = {
|
|
1928
|
+
"data": {
|
|
1929
|
+
"invoice_id": number;
|
|
1930
|
+
"client_id": number;
|
|
1931
|
+
"company_name": string;
|
|
1932
|
+
"client_name": string;
|
|
1933
|
+
"template_version": number;
|
|
1934
|
+
"subject": string;
|
|
1935
|
+
"message": string;
|
|
1936
|
+
"to": Array<InvoiceRecipient>;
|
|
1937
|
+
"cc": Array<InvoiceRecipient>;
|
|
1938
|
+
"recipients_source": "client" | "contacts";
|
|
1939
|
+
"always_cc": Array<InvoiceRecipient>;
|
|
1940
|
+
"sender": {
|
|
1941
|
+
"name": string;
|
|
1942
|
+
"email": string | null;
|
|
1943
|
+
};
|
|
1944
|
+
"send_me_a_copy": boolean;
|
|
1945
|
+
"delivery": {
|
|
1946
|
+
"available": boolean;
|
|
1947
|
+
"code": string | null;
|
|
1948
|
+
"message": string | null;
|
|
1949
|
+
};
|
|
1950
|
+
};
|
|
1951
|
+
};
|
|
1952
|
+
|
|
1953
|
+
export type InvoiceRecipientLists = {
|
|
1954
|
+
"to": Array<InvoiceRecipient>;
|
|
1955
|
+
"cc": Array<InvoiceRecipient>;
|
|
1956
|
+
};
|
|
1957
|
+
|
|
1958
|
+
export type ClientInvoiceSendingEnvelope = {
|
|
1959
|
+
"data": {
|
|
1960
|
+
"client_id": number;
|
|
1961
|
+
"recipients": InvoiceRecipientLists | null;
|
|
1962
|
+
"contacts": InvoiceRecipientLists;
|
|
1963
|
+
"attach_pdf": boolean | null;
|
|
1964
|
+
"append_pdfs": boolean | null;
|
|
1965
|
+
"attach_files": boolean | null;
|
|
1966
|
+
"attach_journal": "detailed" | "summary" | boolean | null;
|
|
1967
|
+
"journal_formats": JournalFormats | null;
|
|
1968
|
+
"organization": {
|
|
1969
|
+
"attach_pdf": boolean;
|
|
1970
|
+
"append_pdfs": boolean;
|
|
1971
|
+
"attach_files": boolean;
|
|
1972
|
+
"attach_journal": "detailed" | "summary" | boolean;
|
|
1973
|
+
"journal_formats": JournalFormats;
|
|
1974
|
+
};
|
|
1975
|
+
};
|
|
1976
|
+
};
|
|
1977
|
+
|
|
1978
|
+
export type ClientInvoiceSendingInput = {
|
|
1979
|
+
"recipients"?: InvoiceRecipientLists | null;
|
|
1980
|
+
"attach_pdf"?: boolean | null;
|
|
1981
|
+
"append_pdfs"?: boolean | null;
|
|
1982
|
+
"attach_files"?: boolean | null;
|
|
1983
|
+
"attach_journal"?: "detailed" | "summary" | false | null;
|
|
1984
|
+
"journal_formats"?: JournalFormats | null;
|
|
1985
|
+
};
|
|
1986
|
+
|
|
1987
|
+
export type OrganizationInvoiceSendingEnvelope = {
|
|
1988
|
+
"data": {
|
|
1989
|
+
"always_cc": Array<InvoiceRecipient>;
|
|
1990
|
+
};
|
|
1991
|
+
};
|
|
1992
|
+
|
|
1993
|
+
export type OrganizationInvoiceSendingInput = {
|
|
1994
|
+
"always_cc": Array<InvoiceRecipient>;
|
|
1995
|
+
};
|
|
1996
|
+
|
|
1997
|
+
export type InvoicePayment = {
|
|
1998
|
+
"id": number;
|
|
1999
|
+
"invoice_id": number;
|
|
2000
|
+
"currency": string;
|
|
2001
|
+
"amount_cents": number;
|
|
2002
|
+
"paid_at": string | null;
|
|
2003
|
+
"paid_date": string | null;
|
|
2004
|
+
"notes": string | null;
|
|
2005
|
+
"recorded_by_user_id": number | null;
|
|
2006
|
+
"provider": string;
|
|
2007
|
+
"provider_shape": string;
|
|
2008
|
+
"provider_account_id": number | null;
|
|
2009
|
+
"provider_transaction_id": string | null;
|
|
2010
|
+
"bank_deposit_id": number | null;
|
|
2011
|
+
"created_at": string;
|
|
2012
|
+
"updated_at": string;
|
|
2013
|
+
};
|
|
2014
|
+
|
|
2015
|
+
export type InvoicePaymentListEnvelope = {
|
|
2016
|
+
"data": Array<InvoicePayment>;
|
|
2017
|
+
"links": Links;
|
|
1464
2018
|
};
|
|
1465
2019
|
|
|
1466
2020
|
export type InvoicePaymentInput = {
|
|
@@ -1708,6 +2262,13 @@ export type RecurringInvoice = {
|
|
|
1708
2262
|
"next_issue_on": string;
|
|
1709
2263
|
"amount_config": RecurringAmountConfig;
|
|
1710
2264
|
"can_draw_from_retainer_id": number | null;
|
|
2265
|
+
"claims_project_ids": Array<number> | null;
|
|
2266
|
+
"claim_mode": "all" | "ceiling";
|
|
2267
|
+
"claim_ceiling_seconds": number | null;
|
|
2268
|
+
"claim_ceiling_cents": number | null;
|
|
2269
|
+
"claim_scope": "billable" | "tracked";
|
|
2270
|
+
"cost_alert_basis_points": number | null;
|
|
2271
|
+
"purchase_order": string | null;
|
|
1711
2272
|
"created_at": string;
|
|
1712
2273
|
"updated_at": string;
|
|
1713
2274
|
};
|
|
@@ -1738,6 +2299,37 @@ export type RecurringInvoicePage = {
|
|
|
1738
2299
|
"page": PageMetadata;
|
|
1739
2300
|
};
|
|
1740
2301
|
|
|
2302
|
+
export type BandClaimBackfillInput = {
|
|
2303
|
+
"invoice_ids": Array<number>;
|
|
2304
|
+
"project_ids"?: Array<number>;
|
|
2305
|
+
"apply"?: boolean;
|
|
2306
|
+
};
|
|
2307
|
+
|
|
2308
|
+
export type BandClaimBackfillLine = {
|
|
2309
|
+
"invoice_id": number;
|
|
2310
|
+
"number": string;
|
|
2311
|
+
"issue_date": string;
|
|
2312
|
+
"state": string;
|
|
2313
|
+
"amount_cents": number;
|
|
2314
|
+
"entry_count": number;
|
|
2315
|
+
"seconds": number;
|
|
2316
|
+
"billable_value_cents": number;
|
|
2317
|
+
"entries_without_billable_rate": number;
|
|
2318
|
+
"foregone_billable_cents": number;
|
|
2319
|
+
};
|
|
2320
|
+
|
|
2321
|
+
export type BandClaimBackfill = {
|
|
2322
|
+
"run_id": string;
|
|
2323
|
+
"applied": boolean;
|
|
2324
|
+
"invoices": Array<BandClaimBackfillLine>;
|
|
2325
|
+
"remaining_entry_count": number;
|
|
2326
|
+
"remaining_seconds": number;
|
|
2327
|
+
};
|
|
2328
|
+
|
|
2329
|
+
export type BandClaimBackfillEnvelope = {
|
|
2330
|
+
"data": BandClaimBackfill;
|
|
2331
|
+
};
|
|
2332
|
+
|
|
1741
2333
|
export type RecurringInvoiceInput = {
|
|
1742
2334
|
"client_id": number;
|
|
1743
2335
|
"subject_template": string;
|
|
@@ -1747,6 +2339,13 @@ export type RecurringInvoiceInput = {
|
|
|
1747
2339
|
"next_issue_on": string;
|
|
1748
2340
|
"amount_config": RecurringAmountConfig;
|
|
1749
2341
|
"can_draw_from_retainer_id"?: number | null;
|
|
2342
|
+
"claims_project_ids"?: Array<number> | null;
|
|
2343
|
+
"claim_mode"?: "all" | "ceiling";
|
|
2344
|
+
"claim_ceiling_seconds"?: number | null;
|
|
2345
|
+
"claim_ceiling_cents"?: number | null;
|
|
2346
|
+
"claim_scope"?: "billable" | "tracked";
|
|
2347
|
+
"cost_alert_basis_points"?: number | null;
|
|
2348
|
+
"purchase_order"?: string | null;
|
|
1750
2349
|
};
|
|
1751
2350
|
|
|
1752
2351
|
export type MyHoursProject = {
|
|
@@ -1798,8 +2397,12 @@ export type DetailedTimeRow = {
|
|
|
1798
2397
|
"time_entry_count": number;
|
|
1799
2398
|
"billable_amount_cents"?: number | null;
|
|
1800
2399
|
"entries_without_billable_rate": number;
|
|
2400
|
+
"claimed": boolean;
|
|
1801
2401
|
"time_entry_id"?: number;
|
|
2402
|
+
"invoice_id"?: number | null;
|
|
2403
|
+
"invoice_number"?: string | null;
|
|
1802
2404
|
"notes"?: string | null;
|
|
2405
|
+
"project_active"?: boolean;
|
|
1803
2406
|
};
|
|
1804
2407
|
|
|
1805
2408
|
export type DetailedTimeCurrencyTotal = {
|
|
@@ -1813,13 +2416,20 @@ export type DetailedTimeReport = {
|
|
|
1813
2416
|
"to": string;
|
|
1814
2417
|
"client_id": number | null;
|
|
1815
2418
|
"project_id": number | null;
|
|
1816
|
-
"
|
|
2419
|
+
"task_id": number | null;
|
|
2420
|
+
"user_id": number | null;
|
|
2421
|
+
"role_id": number | null;
|
|
2422
|
+
"tag_id": number | null;
|
|
2423
|
+
"invoice_state": "all" | "invoiced" | "uninvoiced";
|
|
2424
|
+
"hours": "all" | "billable" | "non_billable" | "uninvoiced" | "claimed" | "unclaimed";
|
|
1817
2425
|
"grain": "day" | "entry";
|
|
1818
2426
|
"active_projects_only": boolean;
|
|
1819
2427
|
"seconds": number;
|
|
1820
2428
|
"rounded_seconds": number;
|
|
1821
2429
|
"billable_seconds": number;
|
|
1822
2430
|
"uninvoiced_billable_seconds": number;
|
|
2431
|
+
"claimed_seconds": number;
|
|
2432
|
+
"unclaimed_seconds": number;
|
|
1823
2433
|
"time_entry_count": number;
|
|
1824
2434
|
"currencies": Array<DetailedTimeCurrencyTotal>;
|
|
1825
2435
|
"rows": Array<DetailedTimeRow>;
|
|
@@ -1830,6 +2440,30 @@ export type DetailedTimeReportEnvelope = {
|
|
|
1830
2440
|
"links": Links;
|
|
1831
2441
|
};
|
|
1832
2442
|
|
|
2443
|
+
export type ReportTimeActionInput = {
|
|
2444
|
+
"command_id": string;
|
|
2445
|
+
"action": "mark_invoiced" | "mark_uninvoiced" | "move";
|
|
2446
|
+
"entry_ids": Array<number>;
|
|
2447
|
+
"confirmed": true;
|
|
2448
|
+
"invoice_id"?: number;
|
|
2449
|
+
"project_id"?: number;
|
|
2450
|
+
"task_id"?: number;
|
|
2451
|
+
};
|
|
2452
|
+
|
|
2453
|
+
export type ReportTimeAction = {
|
|
2454
|
+
"command_id": string;
|
|
2455
|
+
"action": "mark_invoiced" | "mark_uninvoiced" | "move";
|
|
2456
|
+
"requested": number;
|
|
2457
|
+
"changed_entry_ids": Array<number>;
|
|
2458
|
+
"ineligible_entry_ids": Array<number>;
|
|
2459
|
+
"replayed": boolean;
|
|
2460
|
+
};
|
|
2461
|
+
|
|
2462
|
+
export type ReportTimeActionEnvelope = {
|
|
2463
|
+
"data": ReportTimeAction;
|
|
2464
|
+
"links": Links;
|
|
2465
|
+
};
|
|
2466
|
+
|
|
1833
2467
|
export type TimeReportAmount = {
|
|
1834
2468
|
"currency": string;
|
|
1835
2469
|
"billable_cents": number;
|
|
@@ -1898,6 +2532,7 @@ export type TimeReportTeammateRow = {
|
|
|
1898
2532
|
export type TimeReport = {
|
|
1899
2533
|
"from": string;
|
|
1900
2534
|
"to": string;
|
|
2535
|
+
"fixed_fee_included": boolean;
|
|
1901
2536
|
"totals": TimeReportTotals;
|
|
1902
2537
|
"clients": Array<TimeReportClientRow>;
|
|
1903
2538
|
"projects": Array<TimeReportProjectRow>;
|
|
@@ -1951,7 +2586,11 @@ export type ContractorCostRow = {
|
|
|
1951
2586
|
"is_contractor": boolean;
|
|
1952
2587
|
"currency": string;
|
|
1953
2588
|
"rounded_seconds": number;
|
|
2589
|
+
"utilization_ppm": number | null;
|
|
1954
2590
|
"cost_cents": number | null;
|
|
2591
|
+
"cost_rate_cents": number | null;
|
|
2592
|
+
"cost_rate_is_mixed": boolean;
|
|
2593
|
+
"entry_count": number;
|
|
1955
2594
|
"entries_without_rate": number;
|
|
1956
2595
|
};
|
|
1957
2596
|
|
|
@@ -1966,6 +2605,213 @@ export type ContractorCostReportEnvelope = {
|
|
|
1966
2605
|
"links": Links;
|
|
1967
2606
|
};
|
|
1968
2607
|
|
|
2608
|
+
export type InvoicedReportTotal = {
|
|
2609
|
+
"currency": string;
|
|
2610
|
+
"invoice_count": number;
|
|
2611
|
+
"invoiced_cents"?: number;
|
|
2612
|
+
"paid_cents"?: number;
|
|
2613
|
+
"balance_cents"?: number;
|
|
2614
|
+
};
|
|
2615
|
+
|
|
2616
|
+
export type InvoicedReportRow = {
|
|
2617
|
+
"invoice_id": number;
|
|
2618
|
+
"number": string;
|
|
2619
|
+
"state": "draft" | "open" | "paid" | "closed";
|
|
2620
|
+
"close_reason": "cancelled" | "written_off" | "source_closed" | null;
|
|
2621
|
+
"issue_date": string;
|
|
2622
|
+
"due_date": string;
|
|
2623
|
+
"client_id": number;
|
|
2624
|
+
"client_name": string;
|
|
2625
|
+
"subject": string | null;
|
|
2626
|
+
"currency": string;
|
|
2627
|
+
"invoiced_cents"?: number;
|
|
2628
|
+
"paid_cents"?: number;
|
|
2629
|
+
"balance_cents"?: number;
|
|
2630
|
+
};
|
|
2631
|
+
|
|
2632
|
+
export type InvoicedReport = {
|
|
2633
|
+
"from": string;
|
|
2634
|
+
"to": string;
|
|
2635
|
+
"client_id": number | null;
|
|
2636
|
+
"status": "draft" | "open" | "paid" | "closed" | null;
|
|
2637
|
+
"totals": Array<InvoicedReportTotal>;
|
|
2638
|
+
"rows": Array<InvoicedReportRow>;
|
|
2639
|
+
};
|
|
2640
|
+
|
|
2641
|
+
export type InvoicedReportEnvelope = {
|
|
2642
|
+
"data": InvoicedReport;
|
|
2643
|
+
"links": Links;
|
|
2644
|
+
};
|
|
2645
|
+
|
|
2646
|
+
export type PaymentsReceivedReportTotal = {
|
|
2647
|
+
"currency": string;
|
|
2648
|
+
"payment_count": number;
|
|
2649
|
+
"payment_cents"?: number;
|
|
2650
|
+
};
|
|
2651
|
+
|
|
2652
|
+
export type PaymentReceivedReportRow = {
|
|
2653
|
+
"payment_id": number;
|
|
2654
|
+
"payment_date": string;
|
|
2655
|
+
"invoice_id": number;
|
|
2656
|
+
"invoice_number": string;
|
|
2657
|
+
"client_id": number;
|
|
2658
|
+
"client_name": string;
|
|
2659
|
+
"currency": string;
|
|
2660
|
+
"provider": string;
|
|
2661
|
+
"invoice_total_cents"?: number;
|
|
2662
|
+
"payment_cents"?: number;
|
|
2663
|
+
};
|
|
2664
|
+
|
|
2665
|
+
export type PaymentsReceivedReport = {
|
|
2666
|
+
"from": string;
|
|
2667
|
+
"to": string;
|
|
2668
|
+
"client_id": number | null;
|
|
2669
|
+
"totals": Array<PaymentsReceivedReportTotal>;
|
|
2670
|
+
"rows": Array<PaymentReceivedReportRow>;
|
|
2671
|
+
};
|
|
2672
|
+
|
|
2673
|
+
export type PaymentsReceivedReportEnvelope = {
|
|
2674
|
+
"data": PaymentsReceivedReport;
|
|
2675
|
+
"links": Links;
|
|
2676
|
+
};
|
|
2677
|
+
|
|
2678
|
+
export type ReceivablesReportTotal = {
|
|
2679
|
+
"currency": string;
|
|
2680
|
+
"invoice_count": number;
|
|
2681
|
+
"invoiced_cents"?: number;
|
|
2682
|
+
"outstanding_cents"?: number;
|
|
2683
|
+
"not_due_cents"?: number;
|
|
2684
|
+
"days_1_to_30_cents"?: number;
|
|
2685
|
+
"days_31_to_60_cents"?: number;
|
|
2686
|
+
"days_61_to_90_cents"?: number;
|
|
2687
|
+
"days_90_plus_cents"?: number;
|
|
2688
|
+
};
|
|
2689
|
+
|
|
2690
|
+
export type ReceivablesReportRow = {
|
|
2691
|
+
"client_id": number;
|
|
2692
|
+
"client_name": string;
|
|
2693
|
+
"currency": string;
|
|
2694
|
+
"invoice_count": number;
|
|
2695
|
+
"invoiced_cents"?: number;
|
|
2696
|
+
"outstanding_cents"?: number;
|
|
2697
|
+
"not_due_cents"?: number;
|
|
2698
|
+
"days_1_to_30_cents"?: number;
|
|
2699
|
+
"days_31_to_60_cents"?: number;
|
|
2700
|
+
"days_61_to_90_cents"?: number;
|
|
2701
|
+
"days_90_plus_cents"?: number;
|
|
2702
|
+
};
|
|
2703
|
+
|
|
2704
|
+
export type ReceivablesReport = {
|
|
2705
|
+
"as_of": string;
|
|
2706
|
+
"client_id": number | null;
|
|
2707
|
+
"totals": Array<ReceivablesReportTotal>;
|
|
2708
|
+
"rows": Array<ReceivablesReportRow>;
|
|
2709
|
+
};
|
|
2710
|
+
|
|
2711
|
+
export type ReceivablesReportEnvelope = {
|
|
2712
|
+
"data": ReceivablesReport;
|
|
2713
|
+
"links": Links;
|
|
2714
|
+
};
|
|
2715
|
+
|
|
2716
|
+
export type ReportDefinitionPresentation = {
|
|
2717
|
+
"result": "summary" | "detailed";
|
|
2718
|
+
"grouped": boolean;
|
|
2719
|
+
"include_zero_values": boolean;
|
|
2720
|
+
};
|
|
2721
|
+
|
|
2722
|
+
export type SavedReportInput = {
|
|
2723
|
+
"name": string;
|
|
2724
|
+
"fields": Array<{
|
|
2725
|
+
[key: string]: unknown;
|
|
2726
|
+
}>;
|
|
2727
|
+
"metrics": Array<string>;
|
|
2728
|
+
"filters": Array<{
|
|
2729
|
+
[key: string]: unknown;
|
|
2730
|
+
}>;
|
|
2731
|
+
"group_by": {
|
|
2732
|
+
[key: string]: unknown;
|
|
2733
|
+
} | null;
|
|
2734
|
+
"presentation": ReportDefinitionPresentation;
|
|
2735
|
+
};
|
|
2736
|
+
|
|
2737
|
+
export type SavedReportUpdate = {
|
|
2738
|
+
"version": number;
|
|
2739
|
+
"name"?: string;
|
|
2740
|
+
"fields"?: Array<{
|
|
2741
|
+
[key: string]: unknown;
|
|
2742
|
+
}>;
|
|
2743
|
+
"metrics"?: Array<string>;
|
|
2744
|
+
"filters"?: Array<{
|
|
2745
|
+
[key: string]: unknown;
|
|
2746
|
+
}>;
|
|
2747
|
+
"group_by"?: {
|
|
2748
|
+
[key: string]: unknown;
|
|
2749
|
+
} | null;
|
|
2750
|
+
"presentation"?: ReportDefinitionPresentation;
|
|
2751
|
+
};
|
|
2752
|
+
|
|
2753
|
+
export type SavedReport = {
|
|
2754
|
+
"id": string;
|
|
2755
|
+
"name": string;
|
|
2756
|
+
"version": number;
|
|
2757
|
+
"fields": Array<{
|
|
2758
|
+
[key: string]: unknown;
|
|
2759
|
+
}>;
|
|
2760
|
+
"metrics": Array<string>;
|
|
2761
|
+
"filters": Array<{
|
|
2762
|
+
[key: string]: unknown;
|
|
2763
|
+
}>;
|
|
2764
|
+
"group_by": {
|
|
2765
|
+
[key: string]: unknown;
|
|
2766
|
+
} | null;
|
|
2767
|
+
"presentation": ReportDefinitionPresentation;
|
|
2768
|
+
"owner": {
|
|
2769
|
+
[key: string]: unknown;
|
|
2770
|
+
};
|
|
2771
|
+
"is_custom": boolean;
|
|
2772
|
+
"pinned": boolean;
|
|
2773
|
+
"shared": boolean;
|
|
2774
|
+
"created_at": string;
|
|
2775
|
+
"updated_at": string;
|
|
2776
|
+
};
|
|
2777
|
+
|
|
2778
|
+
export type SavedReportEnvelope = {
|
|
2779
|
+
"data": SavedReport;
|
|
2780
|
+
"links": Links;
|
|
2781
|
+
};
|
|
2782
|
+
|
|
2783
|
+
export type SavedReportListEnvelope = {
|
|
2784
|
+
"data": Array<SavedReport>;
|
|
2785
|
+
};
|
|
2786
|
+
|
|
2787
|
+
export type ReportRunnerResult = {
|
|
2788
|
+
"definitionId": string;
|
|
2789
|
+
"definitionVersion": number;
|
|
2790
|
+
"state": "ready" | "empty" | "too_many_rows";
|
|
2791
|
+
"rows": Array<{
|
|
2792
|
+
[key: string]: unknown;
|
|
2793
|
+
}>;
|
|
2794
|
+
};
|
|
2795
|
+
|
|
2796
|
+
export type ReportRunnerEnvelope = {
|
|
2797
|
+
"data": ReportRunnerResult;
|
|
2798
|
+
"links": Links;
|
|
2799
|
+
};
|
|
2800
|
+
|
|
2801
|
+
export type ReportDefinitionRegistry = {
|
|
2802
|
+
"fields": Array<{
|
|
2803
|
+
[key: string]: unknown;
|
|
2804
|
+
}>;
|
|
2805
|
+
"metrics": Array<{
|
|
2806
|
+
[key: string]: unknown;
|
|
2807
|
+
}>;
|
|
2808
|
+
};
|
|
2809
|
+
|
|
2810
|
+
export type ReportDefinitionRegistryEnvelope = {
|
|
2811
|
+
"data": ReportDefinitionRegistry;
|
|
2812
|
+
"links": Links;
|
|
2813
|
+
};
|
|
2814
|
+
|
|
1969
2815
|
export type DetailedExpenseRow = {
|
|
1970
2816
|
"expense_id": number;
|
|
1971
2817
|
"spent_date": string;
|
|
@@ -1998,7 +2844,12 @@ export type DetailedExpenseReport = {
|
|
|
1998
2844
|
"to": string;
|
|
1999
2845
|
"client_id": number | null;
|
|
2000
2846
|
"project_id": number | null;
|
|
2001
|
-
"
|
|
2847
|
+
"category_id": number | null;
|
|
2848
|
+
"user_id": number | null;
|
|
2849
|
+
"billable": boolean | null;
|
|
2850
|
+
"reimbursable": boolean | null;
|
|
2851
|
+
"invoice_state": "all" | "invoiced" | "uninvoiced";
|
|
2852
|
+
"active_projects_only": boolean;
|
|
2002
2853
|
"totals": Array<DetailedExpenseTotal>;
|
|
2003
2854
|
"rows": Array<DetailedExpenseRow>;
|
|
2004
2855
|
};
|
|
@@ -2008,6 +2859,80 @@ export type DetailedExpenseReportEnvelope = {
|
|
|
2008
2859
|
"links": Links;
|
|
2009
2860
|
};
|
|
2010
2861
|
|
|
2862
|
+
export type MonthEndItem = {
|
|
2863
|
+
"subject_type": string;
|
|
2864
|
+
"subject_id": number;
|
|
2865
|
+
"description": string;
|
|
2866
|
+
"amount_cents": number | null;
|
|
2867
|
+
"currency": string | null;
|
|
2868
|
+
"target": string | null;
|
|
2869
|
+
"brand_name": string | null;
|
|
2870
|
+
"cost_cents": number | null;
|
|
2871
|
+
"margin_cents": number | null;
|
|
2872
|
+
};
|
|
2873
|
+
|
|
2874
|
+
export type MonthEndExclusion = {
|
|
2875
|
+
"invoice_id": number;
|
|
2876
|
+
"number": string;
|
|
2877
|
+
"reason": string;
|
|
2878
|
+
};
|
|
2879
|
+
|
|
2880
|
+
export type MonthEndManifest = {
|
|
2881
|
+
"period_start": string;
|
|
2882
|
+
"period_end": string;
|
|
2883
|
+
"items": Array<MonthEndItem>;
|
|
2884
|
+
"excluded": Array<MonthEndExclusion>;
|
|
2885
|
+
};
|
|
2886
|
+
|
|
2887
|
+
export type MonthEndManifestEnvelope = {
|
|
2888
|
+
"data": MonthEndManifest;
|
|
2889
|
+
"links": Links;
|
|
2890
|
+
};
|
|
2891
|
+
|
|
2892
|
+
export type BandedMonthRow = {
|
|
2893
|
+
"period_start": string;
|
|
2894
|
+
"period_end": string;
|
|
2895
|
+
"project_id": number;
|
|
2896
|
+
"project_name": string;
|
|
2897
|
+
"client_id": number;
|
|
2898
|
+
"client_name": string;
|
|
2899
|
+
"currency": string;
|
|
2900
|
+
"rounded_seconds": number;
|
|
2901
|
+
"billable_value_cents": number | null;
|
|
2902
|
+
"cost_value_cents": number | null;
|
|
2903
|
+
"entries_without_billable_rate": number;
|
|
2904
|
+
"entries_without_cost_rate": number;
|
|
2905
|
+
"claimed_in_other_currency": number;
|
|
2906
|
+
"billed_cents": number | null;
|
|
2907
|
+
"foregone_cents": number | null;
|
|
2908
|
+
"cost_ratio_basis_points": number | null;
|
|
2909
|
+
"cost_alert_basis_points": number;
|
|
2910
|
+
"cost_ratio_state": "within" | "over" | "unpriced" | "unbilled";
|
|
2911
|
+
};
|
|
2912
|
+
|
|
2913
|
+
export type BandedMonthReport = {
|
|
2914
|
+
"from": string;
|
|
2915
|
+
"to": string;
|
|
2916
|
+
"rows": Array<BandedMonthRow>;
|
|
2917
|
+
};
|
|
2918
|
+
|
|
2919
|
+
export type BandedMonthReportEnvelope = {
|
|
2920
|
+
"data": BandedMonthReport;
|
|
2921
|
+
"links": Links;
|
|
2922
|
+
};
|
|
2923
|
+
|
|
2924
|
+
export type BandCostAlert = {
|
|
2925
|
+
"basis_points": number;
|
|
2926
|
+
};
|
|
2927
|
+
|
|
2928
|
+
export type BandCostAlertEnvelope = {
|
|
2929
|
+
"data": BandCostAlert;
|
|
2930
|
+
};
|
|
2931
|
+
|
|
2932
|
+
export type BandCostAlertInput = {
|
|
2933
|
+
"basis_points": number;
|
|
2934
|
+
};
|
|
2935
|
+
|
|
2011
2936
|
export type ProfitabilityRow = {
|
|
2012
2937
|
"project_id": number;
|
|
2013
2938
|
"project_name": string;
|
|
@@ -2019,6 +2944,9 @@ export type ProfitabilityRow = {
|
|
|
2019
2944
|
"revenue_cents": number | null;
|
|
2020
2945
|
"cost_cents": number | null;
|
|
2021
2946
|
"profit_cents": number | null;
|
|
2947
|
+
"return_on_cost_ppm": number | null;
|
|
2948
|
+
"revenue_fee_cents": number;
|
|
2949
|
+
"fees_included_in_delivery_cost_cents": number;
|
|
2022
2950
|
"entries_without_billable_rate": number;
|
|
2023
2951
|
"entries_without_cost_rate": number;
|
|
2024
2952
|
};
|
|
@@ -2028,17 +2956,54 @@ export type ProfitabilityTotals = {
|
|
|
2028
2956
|
"revenue_cents": number | null;
|
|
2029
2957
|
"cost_cents": number | null;
|
|
2030
2958
|
"profit_cents": number | null;
|
|
2959
|
+
"return_on_cost_ppm": number | null;
|
|
2960
|
+
"revenue_fee_cents": number;
|
|
2961
|
+
"fees_included_in_delivery_cost_cents": number;
|
|
2031
2962
|
"entries_without_billable_rate": number;
|
|
2032
2963
|
"entries_without_cost_rate": number;
|
|
2033
2964
|
"projects_not_converted": number;
|
|
2034
2965
|
};
|
|
2035
2966
|
|
|
2967
|
+
export type ProfitabilityDimensionRow = {
|
|
2968
|
+
"dimension_id": number;
|
|
2969
|
+
"dimension_name": string;
|
|
2970
|
+
"currency": string;
|
|
2971
|
+
"rounded_seconds": number;
|
|
2972
|
+
"revenue_cents": number | null;
|
|
2973
|
+
"cost_cents": number | null;
|
|
2974
|
+
"profit_cents": number | null;
|
|
2975
|
+
"return_on_cost_ppm": number | null;
|
|
2976
|
+
"revenue_fee_cents": number;
|
|
2977
|
+
"fees_included_in_delivery_cost_cents": number;
|
|
2978
|
+
"entries_without_billable_rate": number;
|
|
2979
|
+
"entries_without_cost_rate": number;
|
|
2980
|
+
"included_in_headline": boolean;
|
|
2981
|
+
};
|
|
2982
|
+
|
|
2983
|
+
export type ProfitabilityTrendRow = (ProfitabilityDimensionRow) & ({
|
|
2984
|
+
"period_start": string;
|
|
2985
|
+
"period_end": string;
|
|
2986
|
+
"current": boolean;
|
|
2987
|
+
});
|
|
2988
|
+
|
|
2989
|
+
export type ProfitabilityFilters = {
|
|
2990
|
+
"project_status": "all" | "active" | "archived";
|
|
2991
|
+
"billing_method": "non_billable" | "time_materials" | "fixed_fee" | null;
|
|
2992
|
+
"manager_id": number | null;
|
|
2993
|
+
"tag_id": number | null;
|
|
2994
|
+
};
|
|
2995
|
+
|
|
2036
2996
|
export type ProfitabilityReport = {
|
|
2037
2997
|
"from": string;
|
|
2038
2998
|
"to": string;
|
|
2039
2999
|
"organization_currency": string;
|
|
2040
3000
|
"rows": Array<ProfitabilityRow>;
|
|
3001
|
+
"clients": Array<ProfitabilityDimensionRow>;
|
|
3002
|
+
"teammates": Array<ProfitabilityDimensionRow>;
|
|
3003
|
+
"tasks": Array<ProfitabilityDimensionRow>;
|
|
3004
|
+
"trend": Array<ProfitabilityTrendRow>;
|
|
2041
3005
|
"totals": ProfitabilityTotals;
|
|
3006
|
+
"filters": ProfitabilityFilters;
|
|
2042
3007
|
"previous_from": string;
|
|
2043
3008
|
"previous_to": string;
|
|
2044
3009
|
"previous_totals": ProfitabilityTotals;
|
|
@@ -2161,7 +3126,18 @@ export type ModuleListEnvelope = {
|
|
|
2161
3126
|
"links": Links;
|
|
2162
3127
|
};
|
|
2163
3128
|
|
|
2164
|
-
export type
|
|
3129
|
+
export type SignInMethodState = {
|
|
3130
|
+
"method": "password" | "magic_link" | "google" | "github" | "apple";
|
|
3131
|
+
"configured": boolean;
|
|
3132
|
+
"enabled": boolean;
|
|
3133
|
+
};
|
|
3134
|
+
|
|
3135
|
+
export type SignInMethodListEnvelope = {
|
|
3136
|
+
"data": Array<SignInMethodState>;
|
|
3137
|
+
"links": Links;
|
|
3138
|
+
};
|
|
3139
|
+
|
|
3140
|
+
export type SsoDomain = {
|
|
2165
3141
|
"id": number;
|
|
2166
3142
|
"domain": string;
|
|
2167
3143
|
"verified": boolean;
|
|
@@ -2275,6 +3251,150 @@ export type InvoicePaymentLinkEnvelope = {
|
|
|
2275
3251
|
};
|
|
2276
3252
|
};
|
|
2277
3253
|
|
|
3254
|
+
export type IncompleteRecurringInvoiceListEnvelope = {
|
|
3255
|
+
"data": Array<{
|
|
3256
|
+
"id": number;
|
|
3257
|
+
"harvest_id": number;
|
|
3258
|
+
"client_id": number;
|
|
3259
|
+
"client_name": string;
|
|
3260
|
+
"invoice_count": number;
|
|
3261
|
+
"created_at": string;
|
|
3262
|
+
"updated_at": string;
|
|
3263
|
+
}>;
|
|
3264
|
+
};
|
|
3265
|
+
|
|
3266
|
+
export type RecurringInvoiceCompletionEnvelope = {
|
|
3267
|
+
"data": {
|
|
3268
|
+
"id": number;
|
|
3269
|
+
"completed": boolean;
|
|
3270
|
+
};
|
|
3271
|
+
};
|
|
3272
|
+
|
|
3273
|
+
export type InvoiceThankYouPreferenceEnvelope = {
|
|
3274
|
+
"data": {
|
|
3275
|
+
"invoice_id": number;
|
|
3276
|
+
"auto_thank_you": boolean;
|
|
3277
|
+
"organization_auto_thank_you": boolean;
|
|
3278
|
+
"effective": boolean;
|
|
3279
|
+
};
|
|
3280
|
+
};
|
|
3281
|
+
|
|
3282
|
+
export type OrganizationInvoiceThankYouEnvelope = {
|
|
3283
|
+
"data": {
|
|
3284
|
+
"auto_thank_you": boolean;
|
|
3285
|
+
};
|
|
3286
|
+
};
|
|
3287
|
+
|
|
3288
|
+
export type ReminderPolicy = {
|
|
3289
|
+
"first_after_days": number;
|
|
3290
|
+
"every_days": number;
|
|
3291
|
+
};
|
|
3292
|
+
|
|
3293
|
+
export type InvoiceReminderPreferenceInput = {
|
|
3294
|
+
"reminders": boolean | null;
|
|
3295
|
+
};
|
|
3296
|
+
|
|
3297
|
+
export type InvoiceReminderPreferenceEnvelope = {
|
|
3298
|
+
"data": {
|
|
3299
|
+
"invoice_id": number;
|
|
3300
|
+
"reminders": boolean | null;
|
|
3301
|
+
"organization_reminder_policy": ReminderPolicy | null;
|
|
3302
|
+
"effective": boolean;
|
|
3303
|
+
"next_reminder_at": string | null;
|
|
3304
|
+
};
|
|
3305
|
+
};
|
|
3306
|
+
|
|
3307
|
+
export type OrganizationInvoiceRemindersInput = {
|
|
3308
|
+
"reminder_policy": ReminderPolicy | null;
|
|
3309
|
+
};
|
|
3310
|
+
|
|
3311
|
+
export type OrganizationInvoiceRemindersEnvelope = {
|
|
3312
|
+
"data": {
|
|
3313
|
+
"reminder_policy": ReminderPolicy | null;
|
|
3314
|
+
"applied_to_open_invoices"?: number;
|
|
3315
|
+
};
|
|
3316
|
+
};
|
|
3317
|
+
|
|
3318
|
+
export type JournalFormats = Array<"pdf" | "csv" | "xlsx">;
|
|
3319
|
+
|
|
3320
|
+
export type InvoiceDocumentPreferenceInput = {
|
|
3321
|
+
"attach_pdf"?: boolean | null;
|
|
3322
|
+
"attach_files"?: boolean | null;
|
|
3323
|
+
"append_pdfs"?: boolean | null;
|
|
3324
|
+
"attach_journal"?: "detailed" | "summary" | false | null;
|
|
3325
|
+
"journal_formats"?: JournalFormats | null;
|
|
3326
|
+
};
|
|
3327
|
+
|
|
3328
|
+
export type OrganizationInvoiceDocumentsInput = {
|
|
3329
|
+
"attach_pdf"?: boolean;
|
|
3330
|
+
"attach_files"?: boolean;
|
|
3331
|
+
"append_pdfs"?: boolean;
|
|
3332
|
+
"attach_journal"?: "detailed" | "summary" | false;
|
|
3333
|
+
"journal_formats"?: JournalFormats;
|
|
3334
|
+
};
|
|
3335
|
+
|
|
3336
|
+
export type InvoiceDefaults = {
|
|
3337
|
+
"company_name": string;
|
|
3338
|
+
"company_address": string | null;
|
|
3339
|
+
"notes": string | null;
|
|
3340
|
+
"subject": string | null;
|
|
3341
|
+
};
|
|
3342
|
+
|
|
3343
|
+
export type InvoiceDefaultsEnvelope = {
|
|
3344
|
+
"data": InvoiceDefaults;
|
|
3345
|
+
"links": Links;
|
|
3346
|
+
};
|
|
3347
|
+
|
|
3348
|
+
export type InvoiceDefaultsInput = {
|
|
3349
|
+
"company_name"?: string;
|
|
3350
|
+
"company_address"?: string | null;
|
|
3351
|
+
"notes"?: string | null;
|
|
3352
|
+
"subject"?: string | null;
|
|
3353
|
+
};
|
|
3354
|
+
|
|
3355
|
+
export type InvoiceDocumentPreferenceEnvelope = {
|
|
3356
|
+
"data": {
|
|
3357
|
+
"invoice_id": number;
|
|
3358
|
+
"attach_pdf": boolean;
|
|
3359
|
+
"client_attach_pdf": boolean | null;
|
|
3360
|
+
"organization_attach_pdf": boolean;
|
|
3361
|
+
"effective": boolean;
|
|
3362
|
+
"attach_files": boolean;
|
|
3363
|
+
"client_attach_files": boolean | null;
|
|
3364
|
+
"organization_attach_files": boolean;
|
|
3365
|
+
"effective_files": boolean;
|
|
3366
|
+
"append_pdfs": boolean | null;
|
|
3367
|
+
"client_append_pdfs": boolean | null;
|
|
3368
|
+
"organization_append_pdfs": boolean;
|
|
3369
|
+
"effective_append_pdfs": boolean;
|
|
3370
|
+
"attach_journal": "detailed" | "summary" | boolean;
|
|
3371
|
+
"client_attach_journal": "detailed" | "summary" | boolean | null;
|
|
3372
|
+
"organization_attach_journal": "detailed" | "summary" | boolean;
|
|
3373
|
+
"effective_journal": "detailed" | "summary" | boolean;
|
|
3374
|
+
"journal_formats": JournalFormats | null;
|
|
3375
|
+
"client_journal_formats": JournalFormats | null;
|
|
3376
|
+
"organization_journal_formats": JournalFormats;
|
|
3377
|
+
"effective_journal_formats": JournalFormats;
|
|
3378
|
+
};
|
|
3379
|
+
};
|
|
3380
|
+
|
|
3381
|
+
export type OrganizationInvoiceDocumentsEnvelope = {
|
|
3382
|
+
"data": {
|
|
3383
|
+
"attach_pdf": boolean;
|
|
3384
|
+
"attach_files": boolean;
|
|
3385
|
+
"append_pdfs": boolean;
|
|
3386
|
+
"attach_journal": "detailed" | "summary" | boolean;
|
|
3387
|
+
"journal_formats": JournalFormats;
|
|
3388
|
+
};
|
|
3389
|
+
};
|
|
3390
|
+
|
|
3391
|
+
export type ReleasedTimeEnvelope = {
|
|
3392
|
+
"data": {
|
|
3393
|
+
"invoice_id": number;
|
|
3394
|
+
"released": number;
|
|
3395
|
+
};
|
|
3396
|
+
};
|
|
3397
|
+
|
|
2278
3398
|
export type PayoutAccount = {
|
|
2279
3399
|
"id": number;
|
|
2280
3400
|
"user_id": number;
|
|
@@ -2332,6 +3452,31 @@ export type TwoFactorCodeInput = {
|
|
|
2332
3452
|
"code": string;
|
|
2333
3453
|
};
|
|
2334
3454
|
|
|
3455
|
+
export type TwoFactorChallengeIssued = {
|
|
3456
|
+
"status": "two_factor_required";
|
|
3457
|
+
"challenge": string;
|
|
3458
|
+
"expires_at": string;
|
|
3459
|
+
};
|
|
3460
|
+
|
|
3461
|
+
export type TwoFactorChallengeInput = {
|
|
3462
|
+
"code": string;
|
|
3463
|
+
"challenge"?: string;
|
|
3464
|
+
};
|
|
3465
|
+
|
|
3466
|
+
export type TwoFactorChallengeAccepted = {
|
|
3467
|
+
"status": "authenticated";
|
|
3468
|
+
};
|
|
3469
|
+
|
|
3470
|
+
export type TwoFactorChallengeAcceptedEnvelope = {
|
|
3471
|
+
"data": TwoFactorChallengeAccepted;
|
|
3472
|
+
};
|
|
3473
|
+
|
|
3474
|
+
export type SignInResult = AuthPrincipal | TwoFactorChallengeIssued;
|
|
3475
|
+
|
|
3476
|
+
export type SignInResultEnvelope = {
|
|
3477
|
+
"data": SignInResult;
|
|
3478
|
+
};
|
|
3479
|
+
|
|
2335
3480
|
export type UserEmailInput = {
|
|
2336
3481
|
"email": string;
|
|
2337
3482
|
};
|
|
@@ -2388,7 +3533,14 @@ export class EzactoClient {
|
|
|
2388
3533
|
? options.baseUrl
|
|
2389
3534
|
: `${options.baseUrl}/`;
|
|
2390
3535
|
this.token = options.token;
|
|
2391
|
-
this
|
|
3536
|
+
// Bound, because this is stored on the instance and later called as
|
|
3537
|
+
// `this.fetchImplementation(...)`. A browser's fetch is a method of
|
|
3538
|
+
// Window and refuses any other receiver, so the unbound form threw
|
|
3539
|
+
// "Failed to execute 'fetch' on 'Window': Illegal invocation" on every
|
|
3540
|
+
// request from a page or an extension (#772). Binding whatever we are
|
|
3541
|
+
// given also covers a caller who hands us a bare `globalThis.fetch`;
|
|
3542
|
+
// an arrow or an already-bound function ignores the receiver anyway.
|
|
3543
|
+
this.fetchImplementation = (options.fetch ?? globalThis.fetch).bind(globalThis);
|
|
2392
3544
|
this.defaultHeaders = new Headers(options.headers);
|
|
2393
3545
|
}
|
|
2394
3546
|
|
|
@@ -2455,10 +3607,20 @@ export class EzactoClient {
|
|
|
2455
3607
|
});
|
|
2456
3608
|
}
|
|
2457
3609
|
|
|
2458
|
-
async signIn(args: { body: PasswordSignInInput; signal?: AbortSignal; headers?: HeadersInit }): Promise<
|
|
3610
|
+
async signIn(args: { body: PasswordSignInInput; signal?: AbortSignal; headers?: HeadersInit }): Promise<SignInResultEnvelope> {
|
|
3611
|
+
const headers = new Headers(args.headers);
|
|
3612
|
+
|
|
3613
|
+
return this.request<SignInResultEnvelope>("POST", "/auth/sign-in", {
|
|
3614
|
+
body: args.body,
|
|
3615
|
+
signal: args.signal,
|
|
3616
|
+
headers,
|
|
3617
|
+
});
|
|
3618
|
+
}
|
|
3619
|
+
|
|
3620
|
+
async completeTwoFactorChallenge(args: { body: TwoFactorChallengeInput; signal?: AbortSignal; headers?: HeadersInit }): Promise<TwoFactorChallengeAcceptedEnvelope> {
|
|
2459
3621
|
const headers = new Headers(args.headers);
|
|
2460
3622
|
|
|
2461
|
-
return this.request<
|
|
3623
|
+
return this.request<TwoFactorChallengeAcceptedEnvelope>("POST", "/auth/two-factor/challenge", {
|
|
2462
3624
|
body: args.body,
|
|
2463
3625
|
signal: args.signal,
|
|
2464
3626
|
headers,
|
|
@@ -2703,6 +3865,34 @@ export class EzactoClient {
|
|
|
2703
3865
|
});
|
|
2704
3866
|
}
|
|
2705
3867
|
|
|
3868
|
+
async getProfile(args: { signal?: AbortSignal; headers?: HeadersInit } = {}): Promise<ProfileEnvelope> {
|
|
3869
|
+
const headers = new Headers(args.headers);
|
|
3870
|
+
|
|
3871
|
+
return this.request<ProfileEnvelope>("GET", "/api/v1/profile", {
|
|
3872
|
+
signal: args.signal,
|
|
3873
|
+
headers,
|
|
3874
|
+
});
|
|
3875
|
+
}
|
|
3876
|
+
|
|
3877
|
+
async updateProfile(args: { body: ProfilePatch; signal?: AbortSignal; headers?: HeadersInit }): Promise<ProfileEnvelope> {
|
|
3878
|
+
const headers = new Headers(args.headers);
|
|
3879
|
+
|
|
3880
|
+
return this.request<ProfileEnvelope>("PATCH", "/api/v1/profile", {
|
|
3881
|
+
body: args.body,
|
|
3882
|
+
signal: args.signal,
|
|
3883
|
+
headers,
|
|
3884
|
+
});
|
|
3885
|
+
}
|
|
3886
|
+
|
|
3887
|
+
async requestAccountDeletion(args: { signal?: AbortSignal; headers?: HeadersInit } = {}): Promise<AccountDeletionRequestEnvelope> {
|
|
3888
|
+
const headers = new Headers(args.headers);
|
|
3889
|
+
|
|
3890
|
+
return this.request<AccountDeletionRequestEnvelope>("POST", "/api/v1/profile/deletion-request", {
|
|
3891
|
+
signal: args.signal,
|
|
3892
|
+
headers,
|
|
3893
|
+
});
|
|
3894
|
+
}
|
|
3895
|
+
|
|
2706
3896
|
async listClients(args: { query?: { "cursor"?: string; "per_page"?: number; "is_active"?: boolean; "updated_since"?: string; "parent_client_id"?: number; "bill_to_client_id"?: number; "q"?: string }; signal?: AbortSignal; headers?: HeadersInit } = {}): Promise<GeneralResourcePage> {
|
|
2707
3897
|
const headers = new Headers(args.headers);
|
|
2708
3898
|
|
|
@@ -3221,10 +4411,11 @@ export class EzactoClient {
|
|
|
3221
4411
|
});
|
|
3222
4412
|
}
|
|
3223
4413
|
|
|
3224
|
-
async listTimeEntryOptions(args: { signal?: AbortSignal; headers?: HeadersInit } = {}): Promise<TimeEntryOptionListEnvelope> {
|
|
4414
|
+
async listTimeEntryOptions(args: { query?: { "user_id"?: number }; signal?: AbortSignal; headers?: HeadersInit } = {}): Promise<TimeEntryOptionListEnvelope> {
|
|
3225
4415
|
const headers = new Headers(args.headers);
|
|
3226
4416
|
|
|
3227
4417
|
return this.request<TimeEntryOptionListEnvelope>("GET", "/api/v1/time-entry-options", {
|
|
4418
|
+
query: args.query,
|
|
3228
4419
|
signal: args.signal,
|
|
3229
4420
|
headers,
|
|
3230
4421
|
});
|
|
@@ -3499,7 +4690,7 @@ export class EzactoClient {
|
|
|
3499
4690
|
});
|
|
3500
4691
|
}
|
|
3501
4692
|
|
|
3502
|
-
async listInvoices(args: { query?: { "cursor"?: string; "per_page"?: number; "state"?: string }; signal?: AbortSignal; headers?: HeadersInit } = {}): Promise<InvoicePage> {
|
|
4693
|
+
async listInvoices(args: { query?: { "cursor"?: string; "per_page"?: number; "state"?: string; "client_id"?: string; "number"?: string }; signal?: AbortSignal; headers?: HeadersInit } = {}): Promise<InvoicePage> {
|
|
3503
4694
|
const headers = new Headers(args.headers);
|
|
3504
4695
|
|
|
3505
4696
|
return this.request<InvoicePage>("GET", "/api/v1/invoices", {
|
|
@@ -3566,10 +4757,10 @@ export class EzactoClient {
|
|
|
3566
4757
|
});
|
|
3567
4758
|
}
|
|
3568
4759
|
|
|
3569
|
-
async generateInvoice(args: { "Idempotency-Key": string; body: InvoiceGenerationInput; signal?: AbortSignal; headers?: HeadersInit }): Promise<
|
|
4760
|
+
async generateInvoice(args: { "Idempotency-Key": string; body: InvoiceGenerationInput; signal?: AbortSignal; headers?: HeadersInit }): Promise<InvoiceGenerationEnvelope> {
|
|
3570
4761
|
const headers = new Headers(args.headers);
|
|
3571
4762
|
if (args["Idempotency-Key"] !== undefined) headers.set("Idempotency-Key", String(args["Idempotency-Key"]));
|
|
3572
|
-
return this.request<
|
|
4763
|
+
return this.request<InvoiceGenerationEnvelope>("POST", "/api/v1/invoice-generations", {
|
|
3573
4764
|
body: args.body,
|
|
3574
4765
|
signal: args.signal,
|
|
3575
4766
|
headers,
|
|
@@ -3655,6 +4846,37 @@ export class EzactoClient {
|
|
|
3655
4846
|
});
|
|
3656
4847
|
}
|
|
3657
4848
|
|
|
4849
|
+
async previewInvoiceEmail(args: { "id": number; body: InvoiceEmailPreviewInput; signal?: AbortSignal; headers?: HeadersInit }): Promise<InvoiceEmailPreviewEnvelope> {
|
|
4850
|
+
const headers = new Headers(args.headers);
|
|
4851
|
+
|
|
4852
|
+
return this.request<InvoiceEmailPreviewEnvelope>("POST", "/api/v1/invoices/:id/deliveries/preview".replace(":id", encodeURIComponent(String(args["id"]))), {
|
|
4853
|
+
body: args.body,
|
|
4854
|
+
signal: args.signal,
|
|
4855
|
+
headers,
|
|
4856
|
+
});
|
|
4857
|
+
}
|
|
4858
|
+
|
|
4859
|
+
async downloadInvoiceEmailPreviewDocument(args: { "id": number; query?: { "append_pdfs"?: "true" | "false" }; signal?: AbortSignal; headers?: HeadersInit }): Promise<ArrayBuffer> {
|
|
4860
|
+
const headers = new Headers(args.headers);
|
|
4861
|
+
|
|
4862
|
+
return this.request<ArrayBuffer>("GET", "/api/v1/invoices/:id/deliveries/preview/document".replace(":id", encodeURIComponent(String(args["id"]))), {
|
|
4863
|
+
query: args.query,
|
|
4864
|
+
signal: args.signal,
|
|
4865
|
+
binary: true,
|
|
4866
|
+
headers,
|
|
4867
|
+
});
|
|
4868
|
+
}
|
|
4869
|
+
|
|
4870
|
+
async sendInvoiceEmailPreview(args: { "id": number; body: InvoiceEmailPreviewInput; signal?: AbortSignal; headers?: HeadersInit }): Promise<InvoiceEmailPreviewSentEnvelope> {
|
|
4871
|
+
const headers = new Headers(args.headers);
|
|
4872
|
+
|
|
4873
|
+
return this.request<InvoiceEmailPreviewSentEnvelope>("POST", "/api/v1/invoices/:id/deliveries/preview/send".replace(":id", encodeURIComponent(String(args["id"]))), {
|
|
4874
|
+
body: args.body,
|
|
4875
|
+
signal: args.signal,
|
|
4876
|
+
headers,
|
|
4877
|
+
});
|
|
4878
|
+
}
|
|
4879
|
+
|
|
3658
4880
|
async listInvoicePayments(args: { "id": number; signal?: AbortSignal; headers?: HeadersInit }): Promise<InvoicePaymentListEnvelope> {
|
|
3659
4881
|
const headers = new Headers(args.headers);
|
|
3660
4882
|
|
|
@@ -3694,7 +4916,7 @@ export class EzactoClient {
|
|
|
3694
4916
|
});
|
|
3695
4917
|
}
|
|
3696
4918
|
|
|
3697
|
-
async listRetainers(args: { query?: { "cursor"?: string; "per_page"?: number }; signal?: AbortSignal; headers?: HeadersInit } = {}): Promise<RetainerPage> {
|
|
4919
|
+
async listRetainers(args: { query?: { "cursor"?: string; "per_page"?: number; "client_id"?: string }; signal?: AbortSignal; headers?: HeadersInit } = {}): Promise<RetainerPage> {
|
|
3698
4920
|
const headers = new Headers(args.headers);
|
|
3699
4921
|
|
|
3700
4922
|
return this.request<RetainerPage>("GET", "/api/v1/retainers", {
|
|
@@ -3810,6 +5032,16 @@ export class EzactoClient {
|
|
|
3810
5032
|
});
|
|
3811
5033
|
}
|
|
3812
5034
|
|
|
5035
|
+
async backfillRecurringInvoiceClaims(args: { "id": number; "Idempotency-Key": string; body: BandClaimBackfillInput; signal?: AbortSignal; headers?: HeadersInit }): Promise<BandClaimBackfillEnvelope> {
|
|
5036
|
+
const headers = new Headers(args.headers);
|
|
5037
|
+
if (args["Idempotency-Key"] !== undefined) headers.set("Idempotency-Key", String(args["Idempotency-Key"]));
|
|
5038
|
+
return this.request<BandClaimBackfillEnvelope>("POST", "/api/v1/recurring-invoices/:id/claim-backfill".replace(":id", encodeURIComponent(String(args["id"]))), {
|
|
5039
|
+
body: args.body,
|
|
5040
|
+
signal: args.signal,
|
|
5041
|
+
headers,
|
|
5042
|
+
});
|
|
5043
|
+
}
|
|
5044
|
+
|
|
3813
5045
|
async generateRecurringInvoice(args: { "id": number; "Idempotency-Key": string; signal?: AbortSignal; headers?: HeadersInit }): Promise<RecurringGenerationEnvelope> {
|
|
3814
5046
|
const headers = new Headers(args.headers);
|
|
3815
5047
|
if (args["Idempotency-Key"] !== undefined) headers.set("Idempotency-Key", String(args["Idempotency-Key"]));
|
|
@@ -4014,341 +5246,1006 @@ export class EzactoClient {
|
|
|
4014
5246
|
});
|
|
4015
5247
|
}
|
|
4016
5248
|
|
|
4017
|
-
async
|
|
5249
|
+
async setRecurringInvoiceAttachmentThrough(args: { "recurringInvoiceId": number; "attachmentId": number; body: RecurringAttachmentThroughInput; signal?: AbortSignal; headers?: HeadersInit }): Promise<AttachmentEnvelope> {
|
|
4018
5250
|
const headers = new Headers(args.headers);
|
|
4019
5251
|
|
|
4020
|
-
return this.request<
|
|
4021
|
-
|
|
5252
|
+
return this.request<AttachmentEnvelope>("PATCH", "/api/v1/recurring-invoices/:recurringInvoiceId/attachments/:attachmentId".replace(":recurringInvoiceId", encodeURIComponent(String(args["recurringInvoiceId"]))).replace(":attachmentId", encodeURIComponent(String(args["attachmentId"]))), {
|
|
5253
|
+
body: args.body,
|
|
4022
5254
|
signal: args.signal,
|
|
4023
5255
|
headers,
|
|
4024
5256
|
});
|
|
4025
5257
|
}
|
|
4026
5258
|
|
|
4027
|
-
async
|
|
5259
|
+
async removeRecurringInvoiceAttachment(args: { "recurringInvoiceId": number; "attachmentId": number; signal?: AbortSignal; headers?: HeadersInit }): Promise<void> {
|
|
4028
5260
|
const headers = new Headers(args.headers);
|
|
4029
5261
|
|
|
4030
|
-
return this.request<
|
|
4031
|
-
query: args.query,
|
|
5262
|
+
return this.request<void>("DELETE", "/api/v1/recurring-invoices/:recurringInvoiceId/attachments/:attachmentId".replace(":recurringInvoiceId", encodeURIComponent(String(args["recurringInvoiceId"]))).replace(":attachmentId", encodeURIComponent(String(args["attachmentId"]))), {
|
|
4032
5263
|
signal: args.signal,
|
|
4033
5264
|
headers,
|
|
4034
5265
|
});
|
|
4035
5266
|
}
|
|
4036
5267
|
|
|
4037
|
-
async
|
|
5268
|
+
async getPaymentActuals(args: { query?: { "month"?: string }; signal?: AbortSignal; headers?: HeadersInit } = {}): Promise<PaymentActualsEnvelope> {
|
|
4038
5269
|
const headers = new Headers(args.headers);
|
|
4039
5270
|
|
|
4040
|
-
return this.request<
|
|
5271
|
+
return this.request<PaymentActualsEnvelope>("GET", "/api/v1/staff-payments/actuals", {
|
|
4041
5272
|
query: args.query,
|
|
4042
5273
|
signal: args.signal,
|
|
4043
5274
|
headers,
|
|
4044
5275
|
});
|
|
4045
5276
|
}
|
|
4046
5277
|
|
|
4047
|
-
async
|
|
5278
|
+
async confirmPaymentActuals(args: { body: ConfirmPaymentActuals; signal?: AbortSignal; headers?: HeadersInit }): Promise<void> {
|
|
4048
5279
|
const headers = new Headers(args.headers);
|
|
4049
5280
|
|
|
4050
|
-
return this.request<
|
|
4051
|
-
|
|
5281
|
+
return this.request<void>("POST", "/api/v1/staff-payments/actuals", {
|
|
5282
|
+
body: args.body,
|
|
4052
5283
|
signal: args.signal,
|
|
4053
5284
|
headers,
|
|
4054
5285
|
});
|
|
4055
5286
|
}
|
|
4056
5287
|
|
|
4057
|
-
async
|
|
5288
|
+
async configureStaffPaymentProvider(args: { body: StaffPaymentProviderCommand; signal?: AbortSignal; headers?: HeadersInit }): Promise<void> {
|
|
4058
5289
|
const headers = new Headers(args.headers);
|
|
4059
5290
|
|
|
4060
|
-
return this.request<
|
|
4061
|
-
|
|
5291
|
+
return this.request<void>("POST", "/api/v1/staff-payments/provider-settings", {
|
|
5292
|
+
body: args.body,
|
|
4062
5293
|
signal: args.signal,
|
|
4063
5294
|
headers,
|
|
4064
5295
|
});
|
|
4065
5296
|
}
|
|
4066
5297
|
|
|
4067
|
-
async
|
|
5298
|
+
async getStaffPaymentReport(args: { query?: { "month"?: string }; signal?: AbortSignal; headers?: HeadersInit } = {}): Promise<StaffPaymentReportEnvelope> {
|
|
4068
5299
|
const headers = new Headers(args.headers);
|
|
4069
5300
|
|
|
4070
|
-
return this.request<
|
|
5301
|
+
return this.request<StaffPaymentReportEnvelope>("GET", "/api/v1/staff-payments", {
|
|
4071
5302
|
query: args.query,
|
|
4072
5303
|
signal: args.signal,
|
|
4073
5304
|
headers,
|
|
4074
5305
|
});
|
|
4075
5306
|
}
|
|
4076
5307
|
|
|
4077
|
-
async
|
|
5308
|
+
async recordStaffPaymentEvent(args: { body: StaffPaymentCommand; signal?: AbortSignal; headers?: HeadersInit }): Promise<void> {
|
|
4078
5309
|
const headers = new Headers(args.headers);
|
|
4079
5310
|
|
|
4080
|
-
return this.request<
|
|
4081
|
-
|
|
5311
|
+
return this.request<void>("POST", "/api/v1/staff-payments/events", {
|
|
5312
|
+
body: args.body,
|
|
4082
5313
|
signal: args.signal,
|
|
4083
5314
|
headers,
|
|
4084
5315
|
});
|
|
4085
5316
|
}
|
|
4086
5317
|
|
|
4087
|
-
async
|
|
5318
|
+
async getPaymentRunReport(args: { query?: { "from"?: string; "to"?: string }; signal?: AbortSignal; headers?: HeadersInit } = {}): Promise<PaymentRunReportEnvelope> {
|
|
4088
5319
|
const headers = new Headers(args.headers);
|
|
4089
5320
|
|
|
4090
|
-
return this.request<
|
|
5321
|
+
return this.request<PaymentRunReportEnvelope>("GET", "/api/v1/payment-runs/report", {
|
|
4091
5322
|
query: args.query,
|
|
4092
5323
|
signal: args.signal,
|
|
4093
5324
|
headers,
|
|
4094
5325
|
});
|
|
4095
5326
|
}
|
|
4096
5327
|
|
|
4097
|
-
async
|
|
5328
|
+
async previewPaymentRun(args: { body: PaymentRunCommand; signal?: AbortSignal; headers?: HeadersInit }): Promise<PaymentRunEnvelope> {
|
|
4098
5329
|
const headers = new Headers(args.headers);
|
|
4099
5330
|
|
|
4100
|
-
return this.request<
|
|
4101
|
-
|
|
5331
|
+
return this.request<PaymentRunEnvelope>("POST", "/api/v1/payment-runs/preview", {
|
|
5332
|
+
body: args.body,
|
|
4102
5333
|
signal: args.signal,
|
|
4103
5334
|
headers,
|
|
4104
5335
|
});
|
|
4105
5336
|
}
|
|
4106
5337
|
|
|
4107
|
-
async
|
|
5338
|
+
async approvePaymentRun(args: { "id": string; body: PaymentRunApproval; signal?: AbortSignal; headers?: HeadersInit }): Promise<PaymentRunEnvelope> {
|
|
4108
5339
|
const headers = new Headers(args.headers);
|
|
4109
5340
|
|
|
4110
|
-
return this.request<
|
|
4111
|
-
|
|
5341
|
+
return this.request<PaymentRunEnvelope>("POST", "/api/v1/payment-runs/:id/approve".replace(":id", encodeURIComponent(String(args["id"]))), {
|
|
5342
|
+
body: args.body,
|
|
4112
5343
|
signal: args.signal,
|
|
4113
5344
|
headers,
|
|
4114
5345
|
});
|
|
4115
5346
|
}
|
|
4116
5347
|
|
|
4117
|
-
async
|
|
5348
|
+
async cancelPaymentRun(args: { "id": string; signal?: AbortSignal; headers?: HeadersInit }): Promise<PaymentRunEnvelope> {
|
|
4118
5349
|
const headers = new Headers(args.headers);
|
|
4119
5350
|
|
|
4120
|
-
return this.request<
|
|
5351
|
+
return this.request<PaymentRunEnvelope>("POST", "/api/v1/payment-runs/:id/cancel".replace(":id", encodeURIComponent(String(args["id"]))), {
|
|
4121
5352
|
signal: args.signal,
|
|
4122
5353
|
headers,
|
|
4123
5354
|
});
|
|
4124
5355
|
}
|
|
4125
5356
|
|
|
4126
|
-
async
|
|
5357
|
+
async reconcilePaymentRunItem(args: { "id": string; "itemId": string; signal?: AbortSignal; headers?: HeadersInit }): Promise<PaymentRunEnvelope> {
|
|
4127
5358
|
const headers = new Headers(args.headers);
|
|
4128
5359
|
|
|
4129
|
-
return this.request<
|
|
4130
|
-
body: args.body,
|
|
5360
|
+
return this.request<PaymentRunEnvelope>("POST", "/api/v1/payment-runs/:id/items/:itemId/reconcile".replace(":id", encodeURIComponent(String(args["id"]))).replace(":itemId", encodeURIComponent(String(args["itemId"]))), {
|
|
4131
5361
|
signal: args.signal,
|
|
4132
5362
|
headers,
|
|
4133
5363
|
});
|
|
4134
5364
|
}
|
|
4135
5365
|
|
|
4136
|
-
async
|
|
5366
|
+
async getReportDefinitionRegistry(args: { signal?: AbortSignal; headers?: HeadersInit } = {}): Promise<ReportDefinitionRegistryEnvelope> {
|
|
4137
5367
|
const headers = new Headers(args.headers);
|
|
4138
5368
|
|
|
4139
|
-
return this.request<
|
|
5369
|
+
return this.request<ReportDefinitionRegistryEnvelope>("GET", "/api/v1/report-definitions/registry", {
|
|
4140
5370
|
signal: args.signal,
|
|
4141
5371
|
headers,
|
|
4142
5372
|
});
|
|
4143
5373
|
}
|
|
4144
5374
|
|
|
4145
|
-
async
|
|
5375
|
+
async listSavedReports(args: { query?: { "view"?: "all" | "yours" | "shared"; "q"?: string; "custom_only"?: boolean }; signal?: AbortSignal; headers?: HeadersInit } = {}): Promise<SavedReportListEnvelope> {
|
|
4146
5376
|
const headers = new Headers(args.headers);
|
|
4147
5377
|
|
|
4148
|
-
return this.request<
|
|
5378
|
+
return this.request<SavedReportListEnvelope>("GET", "/api/v1/report-definitions", {
|
|
5379
|
+
query: args.query,
|
|
4149
5380
|
signal: args.signal,
|
|
4150
5381
|
headers,
|
|
4151
5382
|
});
|
|
4152
5383
|
}
|
|
4153
5384
|
|
|
4154
|
-
async
|
|
5385
|
+
async createSavedReport(args: { body: SavedReportInput; signal?: AbortSignal; headers?: HeadersInit }): Promise<SavedReportEnvelope> {
|
|
4155
5386
|
const headers = new Headers(args.headers);
|
|
4156
5387
|
|
|
4157
|
-
return this.request<
|
|
5388
|
+
return this.request<SavedReportEnvelope>("POST", "/api/v1/report-definitions", {
|
|
5389
|
+
body: args.body,
|
|
4158
5390
|
signal: args.signal,
|
|
4159
5391
|
headers,
|
|
4160
5392
|
});
|
|
4161
5393
|
}
|
|
4162
5394
|
|
|
4163
|
-
async
|
|
5395
|
+
async previewReportDefinition(args: { body: SavedReportInput; signal?: AbortSignal; headers?: HeadersInit }): Promise<ReportRunnerEnvelope> {
|
|
4164
5396
|
const headers = new Headers(args.headers);
|
|
4165
5397
|
|
|
4166
|
-
return this.request<
|
|
5398
|
+
return this.request<ReportRunnerEnvelope>("POST", "/api/v1/report-definitions/preview", {
|
|
4167
5399
|
body: args.body,
|
|
4168
5400
|
signal: args.signal,
|
|
4169
5401
|
headers,
|
|
4170
5402
|
});
|
|
4171
5403
|
}
|
|
4172
5404
|
|
|
4173
|
-
async
|
|
5405
|
+
async getSavedReport(args: { "reportId": string; signal?: AbortSignal; headers?: HeadersInit }): Promise<SavedReportEnvelope> {
|
|
4174
5406
|
const headers = new Headers(args.headers);
|
|
4175
5407
|
|
|
4176
|
-
return this.request<
|
|
5408
|
+
return this.request<SavedReportEnvelope>("GET", "/api/v1/report-definitions/:reportId".replace(":reportId", encodeURIComponent(String(args["reportId"]))), {
|
|
4177
5409
|
signal: args.signal,
|
|
4178
5410
|
headers,
|
|
4179
5411
|
});
|
|
4180
5412
|
}
|
|
4181
5413
|
|
|
4182
|
-
async
|
|
5414
|
+
async updateSavedReport(args: { "reportId": string; body: SavedReportUpdate; signal?: AbortSignal; headers?: HeadersInit }): Promise<SavedReportEnvelope> {
|
|
4183
5415
|
const headers = new Headers(args.headers);
|
|
4184
5416
|
|
|
4185
|
-
return this.request<
|
|
5417
|
+
return this.request<SavedReportEnvelope>("PATCH", "/api/v1/report-definitions/:reportId".replace(":reportId", encodeURIComponent(String(args["reportId"]))), {
|
|
5418
|
+
body: args.body,
|
|
4186
5419
|
signal: args.signal,
|
|
4187
5420
|
headers,
|
|
4188
5421
|
});
|
|
4189
5422
|
}
|
|
4190
5423
|
|
|
4191
|
-
async
|
|
5424
|
+
async deleteSavedReport(args: { "reportId": string; signal?: AbortSignal; headers?: HeadersInit }): Promise<void> {
|
|
4192
5425
|
const headers = new Headers(args.headers);
|
|
4193
5426
|
|
|
4194
|
-
return this.request<
|
|
4195
|
-
body: args.body,
|
|
5427
|
+
return this.request<void>("DELETE", "/api/v1/report-definitions/:reportId".replace(":reportId", encodeURIComponent(String(args["reportId"]))), {
|
|
4196
5428
|
signal: args.signal,
|
|
4197
5429
|
headers,
|
|
4198
5430
|
});
|
|
4199
5431
|
}
|
|
4200
5432
|
|
|
4201
|
-
async
|
|
5433
|
+
async duplicateSavedReport(args: { "reportId": string; signal?: AbortSignal; headers?: HeadersInit }): Promise<SavedReportEnvelope> {
|
|
4202
5434
|
const headers = new Headers(args.headers);
|
|
4203
5435
|
|
|
4204
|
-
return this.request<
|
|
5436
|
+
return this.request<SavedReportEnvelope>("POST", "/api/v1/report-definitions/:reportId/duplicate".replace(":reportId", encodeURIComponent(String(args["reportId"]))), {
|
|
4205
5437
|
signal: args.signal,
|
|
4206
5438
|
headers,
|
|
4207
5439
|
});
|
|
4208
5440
|
}
|
|
4209
5441
|
|
|
4210
|
-
async
|
|
5442
|
+
async pinSavedReport(args: { "reportId": string; signal?: AbortSignal; headers?: HeadersInit }): Promise<void> {
|
|
4211
5443
|
const headers = new Headers(args.headers);
|
|
4212
5444
|
|
|
4213
|
-
return this.request<
|
|
5445
|
+
return this.request<void>("POST", "/api/v1/report-definitions/:reportId/pin".replace(":reportId", encodeURIComponent(String(args["reportId"]))), {
|
|
4214
5446
|
signal: args.signal,
|
|
4215
5447
|
headers,
|
|
4216
5448
|
});
|
|
4217
5449
|
}
|
|
4218
5450
|
|
|
4219
|
-
async
|
|
5451
|
+
async unpinSavedReport(args: { "reportId": string; signal?: AbortSignal; headers?: HeadersInit }): Promise<void> {
|
|
4220
5452
|
const headers = new Headers(args.headers);
|
|
4221
5453
|
|
|
4222
|
-
return this.request<
|
|
5454
|
+
return this.request<void>("DELETE", "/api/v1/report-definitions/:reportId/pin".replace(":reportId", encodeURIComponent(String(args["reportId"]))), {
|
|
4223
5455
|
signal: args.signal,
|
|
4224
5456
|
headers,
|
|
4225
5457
|
});
|
|
4226
5458
|
}
|
|
4227
5459
|
|
|
4228
|
-
async
|
|
5460
|
+
async shareSavedReport(args: { "reportId": string; "userId": number; signal?: AbortSignal; headers?: HeadersInit }): Promise<void> {
|
|
4229
5461
|
const headers = new Headers(args.headers);
|
|
4230
5462
|
|
|
4231
|
-
return this.request<
|
|
5463
|
+
return this.request<void>("POST", "/api/v1/report-definitions/:reportId/shares/:userId".replace(":reportId", encodeURIComponent(String(args["reportId"]))).replace(":userId", encodeURIComponent(String(args["userId"]))), {
|
|
4232
5464
|
signal: args.signal,
|
|
4233
5465
|
headers,
|
|
4234
5466
|
});
|
|
4235
5467
|
}
|
|
4236
5468
|
|
|
4237
|
-
async
|
|
5469
|
+
async unshareSavedReport(args: { "reportId": string; "userId": number; signal?: AbortSignal; headers?: HeadersInit }): Promise<void> {
|
|
4238
5470
|
const headers = new Headers(args.headers);
|
|
4239
5471
|
|
|
4240
|
-
return this.request<void>("DELETE", "/api/v1/
|
|
5472
|
+
return this.request<void>("DELETE", "/api/v1/report-definitions/:reportId/shares/:userId".replace(":reportId", encodeURIComponent(String(args["reportId"]))).replace(":userId", encodeURIComponent(String(args["userId"]))), {
|
|
4241
5473
|
signal: args.signal,
|
|
4242
5474
|
headers,
|
|
4243
5475
|
});
|
|
4244
5476
|
}
|
|
4245
5477
|
|
|
4246
|
-
async
|
|
5478
|
+
async runSavedReport(args: { "reportId": string; signal?: AbortSignal; headers?: HeadersInit }): Promise<ReportRunnerEnvelope> {
|
|
4247
5479
|
const headers = new Headers(args.headers);
|
|
4248
5480
|
|
|
4249
|
-
return this.request<
|
|
5481
|
+
return this.request<ReportRunnerEnvelope>("POST", "/api/v1/report-definitions/:reportId/run".replace(":reportId", encodeURIComponent(String(args["reportId"]))), {
|
|
4250
5482
|
signal: args.signal,
|
|
4251
5483
|
headers,
|
|
4252
5484
|
});
|
|
4253
5485
|
}
|
|
4254
5486
|
|
|
4255
|
-
async
|
|
5487
|
+
async getMyHoursReport(args: { query: { "from": string; "to": string; "project_id"?: number }; signal?: AbortSignal; headers?: HeadersInit }): Promise<MyHoursReportEnvelope> {
|
|
4256
5488
|
const headers = new Headers(args.headers);
|
|
4257
5489
|
|
|
4258
|
-
return this.request<
|
|
4259
|
-
|
|
5490
|
+
return this.request<MyHoursReportEnvelope>("GET", "/api/v1/reports/my-hours", {
|
|
5491
|
+
query: args.query,
|
|
4260
5492
|
signal: args.signal,
|
|
4261
5493
|
headers,
|
|
4262
5494
|
});
|
|
4263
5495
|
}
|
|
4264
5496
|
|
|
4265
|
-
async
|
|
5497
|
+
async getTimeReport(args: { query: { "from": string; "to": string; "include_fixed_fee"?: boolean }; signal?: AbortSignal; headers?: HeadersInit }): Promise<TimeReportEnvelope> {
|
|
4266
5498
|
const headers = new Headers(args.headers);
|
|
4267
5499
|
|
|
4268
|
-
return this.request<
|
|
5500
|
+
return this.request<TimeReportEnvelope>("GET", "/api/v1/reports/time", {
|
|
5501
|
+
query: args.query,
|
|
4269
5502
|
signal: args.signal,
|
|
4270
5503
|
headers,
|
|
4271
5504
|
});
|
|
4272
5505
|
}
|
|
4273
5506
|
|
|
4274
|
-
async
|
|
5507
|
+
async getInvoicedReport(args: { query: { "from": string; "to": string; "client_id"?: number; "status"?: "draft" | "open" | "paid" | "closed" }; signal?: AbortSignal; headers?: HeadersInit }): Promise<InvoicedReportEnvelope> {
|
|
4275
5508
|
const headers = new Headers(args.headers);
|
|
4276
5509
|
|
|
4277
|
-
return this.request<
|
|
5510
|
+
return this.request<InvoicedReportEnvelope>("GET", "/api/v1/reports/invoiced", {
|
|
5511
|
+
query: args.query,
|
|
4278
5512
|
signal: args.signal,
|
|
4279
5513
|
headers,
|
|
4280
5514
|
});
|
|
4281
5515
|
}
|
|
4282
5516
|
|
|
4283
|
-
async
|
|
5517
|
+
async getPaymentsReceivedReport(args: { query: { "from": string; "to": string; "client_id"?: number }; signal?: AbortSignal; headers?: HeadersInit }): Promise<PaymentsReceivedReportEnvelope> {
|
|
4284
5518
|
const headers = new Headers(args.headers);
|
|
4285
5519
|
|
|
4286
|
-
return this.request<
|
|
5520
|
+
return this.request<PaymentsReceivedReportEnvelope>("GET", "/api/v1/reports/payments-received", {
|
|
5521
|
+
query: args.query,
|
|
4287
5522
|
signal: args.signal,
|
|
4288
5523
|
headers,
|
|
4289
5524
|
});
|
|
4290
5525
|
}
|
|
4291
5526
|
|
|
4292
|
-
async
|
|
5527
|
+
async getReceivablesReport(args: { query: { "as_of": string; "client_id"?: number }; signal?: AbortSignal; headers?: HeadersInit }): Promise<ReceivablesReportEnvelope> {
|
|
4293
5528
|
const headers = new Headers(args.headers);
|
|
4294
5529
|
|
|
4295
|
-
return this.request<
|
|
4296
|
-
|
|
5530
|
+
return this.request<ReceivablesReportEnvelope>("GET", "/api/v1/reports/receivables", {
|
|
5531
|
+
query: args.query,
|
|
4297
5532
|
signal: args.signal,
|
|
4298
5533
|
headers,
|
|
4299
5534
|
});
|
|
4300
5535
|
}
|
|
4301
5536
|
|
|
4302
|
-
async
|
|
5537
|
+
async getContractorCostReport(args: { query: { "from": string; "to": string }; signal?: AbortSignal; headers?: HeadersInit }): Promise<ContractorCostReportEnvelope> {
|
|
4303
5538
|
const headers = new Headers(args.headers);
|
|
4304
5539
|
|
|
4305
|
-
return this.request<
|
|
5540
|
+
return this.request<ContractorCostReportEnvelope>("GET", "/api/v1/reports/contractor", {
|
|
5541
|
+
query: args.query,
|
|
4306
5542
|
signal: args.signal,
|
|
4307
5543
|
headers,
|
|
4308
5544
|
});
|
|
4309
5545
|
}
|
|
4310
5546
|
|
|
4311
|
-
async
|
|
5547
|
+
async getMonthEndManifest(args: { query: { "from": string; "to": string }; signal?: AbortSignal; headers?: HeadersInit }): Promise<MonthEndManifestEnvelope> {
|
|
4312
5548
|
const headers = new Headers(args.headers);
|
|
4313
5549
|
|
|
4314
|
-
return this.request<
|
|
5550
|
+
return this.request<MonthEndManifestEnvelope>("GET", "/api/v1/reports/month-end", {
|
|
5551
|
+
query: args.query,
|
|
4315
5552
|
signal: args.signal,
|
|
4316
5553
|
headers,
|
|
4317
5554
|
});
|
|
4318
5555
|
}
|
|
4319
5556
|
|
|
4320
|
-
async
|
|
5557
|
+
async getBandedMonthReport(args: { query: { "from": string; "to": string }; signal?: AbortSignal; headers?: HeadersInit }): Promise<BandedMonthReportEnvelope> {
|
|
4321
5558
|
const headers = new Headers(args.headers);
|
|
4322
5559
|
|
|
4323
|
-
return this.request<
|
|
5560
|
+
return this.request<BandedMonthReportEnvelope>("GET", "/api/v1/reports/banded-months", {
|
|
5561
|
+
query: args.query,
|
|
4324
5562
|
signal: args.signal,
|
|
4325
5563
|
headers,
|
|
4326
5564
|
});
|
|
4327
5565
|
}
|
|
4328
5566
|
|
|
4329
|
-
async
|
|
5567
|
+
async getBandCostAlert(args: { signal?: AbortSignal; headers?: HeadersInit } = {}): Promise<BandCostAlertEnvelope> {
|
|
4330
5568
|
const headers = new Headers(args.headers);
|
|
4331
5569
|
|
|
4332
|
-
return this.request<
|
|
4333
|
-
body: args.body,
|
|
5570
|
+
return this.request<BandCostAlertEnvelope>("GET", "/api/v1/reports/band-cost-alert", {
|
|
4334
5571
|
signal: args.signal,
|
|
4335
5572
|
headers,
|
|
4336
5573
|
});
|
|
4337
5574
|
}
|
|
4338
5575
|
|
|
4339
|
-
async
|
|
5576
|
+
async setBandCostAlert(args: { body: BandCostAlertInput; signal?: AbortSignal; headers?: HeadersInit }): Promise<BandCostAlertEnvelope> {
|
|
4340
5577
|
const headers = new Headers(args.headers);
|
|
4341
5578
|
|
|
4342
|
-
return this.request<
|
|
5579
|
+
return this.request<BandCostAlertEnvelope>("POST", "/api/v1/reports/band-cost-alert", {
|
|
5580
|
+
body: args.body,
|
|
4343
5581
|
signal: args.signal,
|
|
4344
5582
|
headers,
|
|
4345
5583
|
});
|
|
4346
5584
|
}
|
|
4347
5585
|
|
|
4348
|
-
async
|
|
5586
|
+
async getProfitabilityReport(args: { query: { "from": string; "to": string; "project_status"?: "all" | "active" | "archived"; "billing_method"?: "non_billable" | "time_materials" | "fixed_fee"; "manager_id"?: number; "tag_id"?: number }; signal?: AbortSignal; headers?: HeadersInit }): Promise<ProfitabilityReportEnvelope> {
|
|
4349
5587
|
const headers = new Headers(args.headers);
|
|
4350
5588
|
|
|
4351
|
-
return this.request<
|
|
5589
|
+
return this.request<ProfitabilityReportEnvelope>("GET", "/api/v1/reports/profitability", {
|
|
5590
|
+
query: args.query,
|
|
5591
|
+
signal: args.signal,
|
|
5592
|
+
headers,
|
|
5593
|
+
});
|
|
5594
|
+
}
|
|
5595
|
+
|
|
5596
|
+
async getDetailedExpenseReport(args: { query: { "from": string; "to": string; "client_id"?: number; "project_id"?: number; "category_id"?: number; "user_id"?: number; "billable"?: boolean; "reimbursable"?: boolean; "invoice_state"?: "all" | "invoiced" | "uninvoiced"; "active_projects_only"?: boolean }; signal?: AbortSignal; headers?: HeadersInit }): Promise<DetailedExpenseReportEnvelope> {
|
|
5597
|
+
const headers = new Headers(args.headers);
|
|
5598
|
+
|
|
5599
|
+
return this.request<DetailedExpenseReportEnvelope>("GET", "/api/v1/reports/detailed-expense", {
|
|
5600
|
+
query: args.query,
|
|
5601
|
+
signal: args.signal,
|
|
5602
|
+
headers,
|
|
5603
|
+
});
|
|
5604
|
+
}
|
|
5605
|
+
|
|
5606
|
+
async getUninvoicedReport(args: { query: { "from": string; "to": string; "client_id"?: number; "project_id"?: number }; signal?: AbortSignal; headers?: HeadersInit }): Promise<UninvoicedReportEnvelope> {
|
|
5607
|
+
const headers = new Headers(args.headers);
|
|
5608
|
+
|
|
5609
|
+
return this.request<UninvoicedReportEnvelope>("GET", "/api/v1/reports/uninvoiced", {
|
|
5610
|
+
query: args.query,
|
|
5611
|
+
signal: args.signal,
|
|
5612
|
+
headers,
|
|
5613
|
+
});
|
|
5614
|
+
}
|
|
5615
|
+
|
|
5616
|
+
async getDetailedTimeReport(args: { query: { "self"?: boolean; "include_fixed_fee"?: boolean; "direct_client_only"?: boolean; "contractors_only"?: boolean; "currency"?: string; "project_status"?: "all" | "active" | "archived"; "billing_method"?: "non_billable" | "time_materials" | "fixed_fee"; "manager_id"?: number; "from": string; "to": string; "client_id"?: number; "project_id"?: number; "task_id"?: number; "user_id"?: number; "role_id"?: number; "tag_id"?: number; "hours"?: "all" | "billable" | "non_billable" | "uninvoiced" | "claimed" | "unclaimed"; "grain"?: "day" | "entry"; "audience"?: "internal" | "client"; "invoice_state"?: "all" | "invoiced" | "uninvoiced"; "active_projects_only"?: boolean }; signal?: AbortSignal; headers?: HeadersInit }): Promise<DetailedTimeReportEnvelope> {
|
|
5617
|
+
const headers = new Headers(args.headers);
|
|
5618
|
+
|
|
5619
|
+
return this.request<DetailedTimeReportEnvelope>("GET", "/api/v1/reports/detailed-time", {
|
|
5620
|
+
query: args.query,
|
|
5621
|
+
signal: args.signal,
|
|
5622
|
+
headers,
|
|
5623
|
+
});
|
|
5624
|
+
}
|
|
5625
|
+
|
|
5626
|
+
async downloadDetailedTimeReport(args: { query: { "self"?: boolean; "include_fixed_fee"?: boolean; "direct_client_only"?: boolean; "contractors_only"?: boolean; "currency"?: string; "project_status"?: "all" | "active" | "archived"; "billing_method"?: "non_billable" | "time_materials" | "fixed_fee"; "manager_id"?: number; "from": string; "to": string; "client_id"?: number; "project_id"?: number; "task_id"?: number; "user_id"?: number; "role_id"?: number; "tag_id"?: number; "hours"?: "all" | "billable" | "non_billable" | "uninvoiced" | "claimed" | "unclaimed"; "grain"?: "day" | "entry"; "audience"?: "internal" | "client"; "invoice_state"?: "all" | "invoiced" | "uninvoiced"; "active_projects_only"?: boolean; "format": "pdf" | "csv" | "xlsx" }; signal?: AbortSignal; headers?: HeadersInit }): Promise<ArrayBuffer> {
|
|
5627
|
+
const headers = new Headers(args.headers);
|
|
5628
|
+
|
|
5629
|
+
return this.request<ArrayBuffer>("GET", "/api/v1/reports/detailed-time/export", {
|
|
5630
|
+
query: args.query,
|
|
5631
|
+
signal: args.signal,
|
|
5632
|
+
binary: true,
|
|
5633
|
+
headers,
|
|
5634
|
+
});
|
|
5635
|
+
}
|
|
5636
|
+
|
|
5637
|
+
async executeDetailedTimeAction(args: { body: ReportTimeActionInput; signal?: AbortSignal; headers?: HeadersInit }): Promise<ReportTimeActionEnvelope> {
|
|
5638
|
+
const headers = new Headers(args.headers);
|
|
5639
|
+
|
|
5640
|
+
return this.request<ReportTimeActionEnvelope>("POST", "/api/v1/reports/detailed-time/actions", {
|
|
5641
|
+
body: args.body,
|
|
5642
|
+
signal: args.signal,
|
|
5643
|
+
headers,
|
|
5644
|
+
});
|
|
5645
|
+
}
|
|
5646
|
+
|
|
5647
|
+
async getClientRollupReport(args: { "clientId": number; query: { "from": string; "to": string }; signal?: AbortSignal; headers?: HeadersInit }): Promise<ClientRollupReportEnvelope> {
|
|
5648
|
+
const headers = new Headers(args.headers);
|
|
5649
|
+
|
|
5650
|
+
return this.request<ClientRollupReportEnvelope>("GET", "/api/v1/reports/client-rollups/:clientId".replace(":clientId", encodeURIComponent(String(args["clientId"]))), {
|
|
5651
|
+
query: args.query,
|
|
5652
|
+
signal: args.signal,
|
|
5653
|
+
headers,
|
|
5654
|
+
});
|
|
5655
|
+
}
|
|
5656
|
+
|
|
5657
|
+
async listProjectBudgetSummaries(args: { query: { "from": string; "to": string }; signal?: AbortSignal; headers?: HeadersInit }): Promise<ProjectBudgetSummaryListEnvelope> {
|
|
5658
|
+
const headers = new Headers(args.headers);
|
|
5659
|
+
|
|
5660
|
+
return this.request<ProjectBudgetSummaryListEnvelope>("GET", "/api/v1/reports/project-budgets", {
|
|
5661
|
+
query: args.query,
|
|
5662
|
+
signal: args.signal,
|
|
5663
|
+
headers,
|
|
5664
|
+
});
|
|
5665
|
+
}
|
|
5666
|
+
|
|
5667
|
+
async getProjectBudgetReport(args: { "projectId": number; query: { "from": string; "to": string }; signal?: AbortSignal; headers?: HeadersInit }): Promise<ProjectBudgetReportEnvelope> {
|
|
5668
|
+
const headers = new Headers(args.headers);
|
|
5669
|
+
|
|
5670
|
+
return this.request<ProjectBudgetReportEnvelope>("GET", "/api/v1/reports/project-budget/:projectId".replace(":projectId", encodeURIComponent(String(args["projectId"]))), {
|
|
5671
|
+
query: args.query,
|
|
5672
|
+
signal: args.signal,
|
|
5673
|
+
headers,
|
|
5674
|
+
});
|
|
5675
|
+
}
|
|
5676
|
+
|
|
5677
|
+
async listModules(args: { signal?: AbortSignal; headers?: HeadersInit } = {}): Promise<ModuleListEnvelope> {
|
|
5678
|
+
const headers = new Headers(args.headers);
|
|
5679
|
+
|
|
5680
|
+
return this.request<ModuleListEnvelope>("GET", "/api/v1/admin/modules", {
|
|
5681
|
+
signal: args.signal,
|
|
5682
|
+
headers,
|
|
5683
|
+
});
|
|
5684
|
+
}
|
|
5685
|
+
|
|
5686
|
+
async updateModule(args: { "module": string; body: ModulePatch; signal?: AbortSignal; headers?: HeadersInit }): Promise<ModuleListEnvelope> {
|
|
5687
|
+
const headers = new Headers(args.headers);
|
|
5688
|
+
|
|
5689
|
+
return this.request<ModuleListEnvelope>("PATCH", "/api/v1/admin/modules/:module".replace(":module", encodeURIComponent(String(args["module"]))), {
|
|
5690
|
+
body: args.body,
|
|
5691
|
+
signal: args.signal,
|
|
5692
|
+
headers,
|
|
5693
|
+
});
|
|
5694
|
+
}
|
|
5695
|
+
|
|
5696
|
+
async listSignInMethods(args: { signal?: AbortSignal; headers?: HeadersInit } = {}): Promise<SignInMethodListEnvelope> {
|
|
5697
|
+
const headers = new Headers(args.headers);
|
|
5698
|
+
|
|
5699
|
+
return this.request<SignInMethodListEnvelope>("GET", "/api/v1/admin/sign-in-methods", {
|
|
5700
|
+
signal: args.signal,
|
|
5701
|
+
headers,
|
|
5702
|
+
});
|
|
5703
|
+
}
|
|
5704
|
+
|
|
5705
|
+
async updateSignInMethod(args: { "method": string; body: ModulePatch; signal?: AbortSignal; headers?: HeadersInit }): Promise<SignInMethodListEnvelope> {
|
|
5706
|
+
const headers = new Headers(args.headers);
|
|
5707
|
+
|
|
5708
|
+
return this.request<SignInMethodListEnvelope>("PATCH", "/api/v1/admin/sign-in-methods/:method".replace(":method", encodeURIComponent(String(args["method"]))), {
|
|
5709
|
+
body: args.body,
|
|
5710
|
+
signal: args.signal,
|
|
5711
|
+
headers,
|
|
5712
|
+
});
|
|
5713
|
+
}
|
|
5714
|
+
|
|
5715
|
+
async getBackupStatus(args: { signal?: AbortSignal; headers?: HeadersInit } = {}): Promise<BackupStatusEnvelope> {
|
|
5716
|
+
const headers = new Headers(args.headers);
|
|
5717
|
+
|
|
5718
|
+
return this.request<BackupStatusEnvelope>("GET", "/api/v1/backup/status", {
|
|
5719
|
+
signal: args.signal,
|
|
5720
|
+
headers,
|
|
5721
|
+
});
|
|
5722
|
+
}
|
|
5723
|
+
|
|
5724
|
+
async getQuickBooksConnection(args: { signal?: AbortSignal; headers?: HeadersInit } = {}): Promise<QuickBooksStatusEnvelope> {
|
|
5725
|
+
const headers = new Headers(args.headers);
|
|
5726
|
+
|
|
5727
|
+
return this.request<QuickBooksStatusEnvelope>("GET", "/api/v1/integrations/quickbooks", {
|
|
5728
|
+
signal: args.signal,
|
|
5729
|
+
headers,
|
|
5730
|
+
});
|
|
5731
|
+
}
|
|
5732
|
+
|
|
5733
|
+
async startQuickBooksAuthorization(args: { signal?: AbortSignal; headers?: HeadersInit } = {}): Promise<QuickBooksAuthorizeEnvelope> {
|
|
5734
|
+
const headers = new Headers(args.headers);
|
|
5735
|
+
|
|
5736
|
+
return this.request<QuickBooksAuthorizeEnvelope>("POST", "/api/v1/integrations/quickbooks/authorize", {
|
|
5737
|
+
signal: args.signal,
|
|
5738
|
+
headers,
|
|
5739
|
+
});
|
|
5740
|
+
}
|
|
5741
|
+
|
|
5742
|
+
async updateQuickBooksSettings(args: { body: QuickBooksSettingsInput; signal?: AbortSignal; headers?: HeadersInit }): Promise<QuickBooksConnectionEnvelope> {
|
|
5743
|
+
const headers = new Headers(args.headers);
|
|
5744
|
+
|
|
5745
|
+
return this.request<QuickBooksConnectionEnvelope>("POST", "/api/v1/integrations/quickbooks/settings", {
|
|
5746
|
+
body: args.body,
|
|
5747
|
+
signal: args.signal,
|
|
5748
|
+
headers,
|
|
5749
|
+
});
|
|
5750
|
+
}
|
|
5751
|
+
|
|
5752
|
+
async disconnectQuickBooks(args: { signal?: AbortSignal; headers?: HeadersInit } = {}): Promise<void> {
|
|
5753
|
+
const headers = new Headers(args.headers);
|
|
5754
|
+
|
|
5755
|
+
return this.request<void>("DELETE", "/api/v1/integrations/quickbooks", {
|
|
5756
|
+
signal: args.signal,
|
|
5757
|
+
headers,
|
|
5758
|
+
});
|
|
5759
|
+
}
|
|
5760
|
+
|
|
5761
|
+
async getInvoiceQuickBooks(args: { "id": number; signal?: AbortSignal; headers?: HeadersInit }): Promise<InvoiceQuickBooksEnvelope> {
|
|
5762
|
+
const headers = new Headers(args.headers);
|
|
5763
|
+
|
|
5764
|
+
return this.request<InvoiceQuickBooksEnvelope>("GET", "/api/v1/invoices/:id/quickbooks".replace(":id", encodeURIComponent(String(args["id"]))), {
|
|
5765
|
+
signal: args.signal,
|
|
5766
|
+
headers,
|
|
5767
|
+
});
|
|
5768
|
+
}
|
|
5769
|
+
|
|
5770
|
+
async syncInvoiceQuickBooks(args: { "id": number; signal?: AbortSignal; headers?: HeadersInit }): Promise<InvoiceQuickBooksEnvelope> {
|
|
5771
|
+
const headers = new Headers(args.headers);
|
|
5772
|
+
|
|
5773
|
+
return this.request<InvoiceQuickBooksEnvelope>("POST", "/api/v1/invoices/:id/quickbooks/sync".replace(":id", encodeURIComponent(String(args["id"]))), {
|
|
5774
|
+
signal: args.signal,
|
|
5775
|
+
headers,
|
|
5776
|
+
});
|
|
5777
|
+
}
|
|
5778
|
+
|
|
5779
|
+
async getWiseConnection(args: { signal?: AbortSignal; headers?: HeadersInit } = {}): Promise<WiseStatusEnvelope> {
|
|
5780
|
+
const headers = new Headers(args.headers);
|
|
5781
|
+
|
|
5782
|
+
return this.request<WiseStatusEnvelope>("GET", "/api/v1/integrations/wise", {
|
|
5783
|
+
signal: args.signal,
|
|
5784
|
+
headers,
|
|
5785
|
+
});
|
|
5786
|
+
}
|
|
5787
|
+
|
|
5788
|
+
async listWiseRecipients(args: { signal?: AbortSignal; headers?: HeadersInit } = {}): Promise<WiseRecipientListEnvelope> {
|
|
5789
|
+
const headers = new Headers(args.headers);
|
|
5790
|
+
|
|
5791
|
+
return this.request<WiseRecipientListEnvelope>("GET", "/api/v1/integrations/wise/recipients", {
|
|
5792
|
+
signal: args.signal,
|
|
5793
|
+
headers,
|
|
5794
|
+
});
|
|
5795
|
+
}
|
|
5796
|
+
|
|
5797
|
+
async onboardWiseRecipient(args: { body: WiseOnboardInput; signal?: AbortSignal; headers?: HeadersInit }): Promise<WiseLinkEnvelope> {
|
|
5798
|
+
const headers = new Headers(args.headers);
|
|
5799
|
+
|
|
5800
|
+
return this.request<WiseLinkEnvelope>("POST", "/api/v1/integrations/wise/recipients", {
|
|
5801
|
+
body: args.body,
|
|
5802
|
+
signal: args.signal,
|
|
5803
|
+
headers,
|
|
5804
|
+
});
|
|
5805
|
+
}
|
|
5806
|
+
|
|
5807
|
+
async listWisePayoutProposals(args: { signal?: AbortSignal; headers?: HeadersInit } = {}): Promise<WiseProposalListEnvelope> {
|
|
5808
|
+
const headers = new Headers(args.headers);
|
|
5809
|
+
|
|
5810
|
+
return this.request<WiseProposalListEnvelope>("GET", "/api/v1/integrations/wise/proposals", {
|
|
5811
|
+
signal: args.signal,
|
|
5812
|
+
headers,
|
|
5813
|
+
});
|
|
5814
|
+
}
|
|
5815
|
+
|
|
5816
|
+
async getWisePayoutDestination(args: { "userId": number; signal?: AbortSignal; headers?: HeadersInit }): Promise<WiseDestinationEnvelope> {
|
|
5817
|
+
const headers = new Headers(args.headers);
|
|
5818
|
+
|
|
5819
|
+
return this.request<WiseDestinationEnvelope>("GET", "/api/v1/integrations/wise/destinations/:userId".replace(":userId", encodeURIComponent(String(args["userId"]))), {
|
|
5820
|
+
signal: args.signal,
|
|
5821
|
+
headers,
|
|
5822
|
+
});
|
|
5823
|
+
}
|
|
5824
|
+
|
|
5825
|
+
async removeWisePayoutDestination(args: { "userId": number; signal?: AbortSignal; headers?: HeadersInit }): Promise<void> {
|
|
5826
|
+
const headers = new Headers(args.headers);
|
|
5827
|
+
|
|
5828
|
+
return this.request<void>("DELETE", "/api/v1/integrations/wise/destinations/:userId".replace(":userId", encodeURIComponent(String(args["userId"]))), {
|
|
5829
|
+
signal: args.signal,
|
|
5830
|
+
headers,
|
|
5831
|
+
});
|
|
5832
|
+
}
|
|
5833
|
+
|
|
5834
|
+
async shareWiseProfile(args: { body: WiseContactInput; signal?: AbortSignal; headers?: HeadersInit }): Promise<WiseContactEnvelope> {
|
|
5835
|
+
const headers = new Headers(args.headers);
|
|
5836
|
+
|
|
5837
|
+
return this.request<WiseContactEnvelope>("POST", "/api/v1/integrations/wise/contacts", {
|
|
5838
|
+
body: args.body,
|
|
5839
|
+
signal: args.signal,
|
|
5840
|
+
headers,
|
|
5841
|
+
});
|
|
5842
|
+
}
|
|
5843
|
+
|
|
5844
|
+
async linkWiseRecipient(args: { body: WiseLinkInput; signal?: AbortSignal; headers?: HeadersInit }): Promise<WiseLinkEnvelope> {
|
|
5845
|
+
const headers = new Headers(args.headers);
|
|
5846
|
+
|
|
5847
|
+
return this.request<WiseLinkEnvelope>("POST", "/api/v1/integrations/wise/recipients/link", {
|
|
5848
|
+
body: args.body,
|
|
5849
|
+
signal: args.signal,
|
|
5850
|
+
headers,
|
|
5851
|
+
});
|
|
5852
|
+
}
|
|
5853
|
+
|
|
5854
|
+
async unlinkWiseRecipient(args: { "accountId": number; signal?: AbortSignal; headers?: HeadersInit }): Promise<void> {
|
|
5855
|
+
const headers = new Headers(args.headers);
|
|
5856
|
+
|
|
5857
|
+
return this.request<void>("DELETE", "/api/v1/integrations/wise/recipients/:accountId".replace(":accountId", encodeURIComponent(String(args["accountId"]))), {
|
|
5858
|
+
signal: args.signal,
|
|
5859
|
+
headers,
|
|
5860
|
+
});
|
|
5861
|
+
}
|
|
5862
|
+
|
|
5863
|
+
async listSsoProvisioningDomains(args: { signal?: AbortSignal; headers?: HeadersInit } = {}): Promise<SsoDomainListEnvelope> {
|
|
5864
|
+
const headers = new Headers(args.headers);
|
|
5865
|
+
|
|
5866
|
+
return this.request<SsoDomainListEnvelope>("GET", "/api/v1/settings/sso-domains", {
|
|
5867
|
+
signal: args.signal,
|
|
5868
|
+
headers,
|
|
5869
|
+
});
|
|
5870
|
+
}
|
|
5871
|
+
|
|
5872
|
+
async addSsoProvisioningDomain(args: { body: SsoDomainInput; signal?: AbortSignal; headers?: HeadersInit }): Promise<SsoDomainEnvelope> {
|
|
5873
|
+
const headers = new Headers(args.headers);
|
|
5874
|
+
|
|
5875
|
+
return this.request<SsoDomainEnvelope>("POST", "/api/v1/settings/sso-domains", {
|
|
5876
|
+
body: args.body,
|
|
5877
|
+
signal: args.signal,
|
|
5878
|
+
headers,
|
|
5879
|
+
});
|
|
5880
|
+
}
|
|
5881
|
+
|
|
5882
|
+
async removeSsoProvisioningDomain(args: { "id": number; signal?: AbortSignal; headers?: HeadersInit }): Promise<void> {
|
|
5883
|
+
const headers = new Headers(args.headers);
|
|
5884
|
+
|
|
5885
|
+
return this.request<void>("DELETE", "/api/v1/settings/sso-domains/:id".replace(":id", encodeURIComponent(String(args["id"]))), {
|
|
5886
|
+
signal: args.signal,
|
|
5887
|
+
headers,
|
|
5888
|
+
});
|
|
5889
|
+
}
|
|
5890
|
+
|
|
5891
|
+
async verifySsoProvisioningDomain(args: { "id": number; signal?: AbortSignal; headers?: HeadersInit }): Promise<SsoDomainCheckEnvelope> {
|
|
5892
|
+
const headers = new Headers(args.headers);
|
|
5893
|
+
|
|
5894
|
+
return this.request<SsoDomainCheckEnvelope>("POST", "/api/v1/settings/sso-domains/:id/verify".replace(":id", encodeURIComponent(String(args["id"]))), {
|
|
5895
|
+
signal: args.signal,
|
|
5896
|
+
headers,
|
|
5897
|
+
});
|
|
5898
|
+
}
|
|
5899
|
+
|
|
5900
|
+
async getBrand(args: { signal?: AbortSignal; headers?: HeadersInit } = {}): Promise<BrandEnvelope> {
|
|
5901
|
+
const headers = new Headers(args.headers);
|
|
5902
|
+
|
|
5903
|
+
return this.request<BrandEnvelope>("GET", "/api/v1/brand", {
|
|
5904
|
+
signal: args.signal,
|
|
5905
|
+
headers,
|
|
5906
|
+
});
|
|
5907
|
+
}
|
|
5908
|
+
|
|
5909
|
+
async listBrandAssets(args: { signal?: AbortSignal; headers?: HeadersInit } = {}): Promise<BrandAssetListEnvelope> {
|
|
5910
|
+
const headers = new Headers(args.headers);
|
|
5911
|
+
|
|
5912
|
+
return this.request<BrandAssetListEnvelope>("GET", "/api/v1/settings/brand-assets", {
|
|
5913
|
+
signal: args.signal,
|
|
5914
|
+
headers,
|
|
5915
|
+
});
|
|
5916
|
+
}
|
|
5917
|
+
|
|
5918
|
+
async removeBrandAsset(args: { "slot": string; signal?: AbortSignal; headers?: HeadersInit }): Promise<void> {
|
|
5919
|
+
const headers = new Headers(args.headers);
|
|
5920
|
+
|
|
5921
|
+
return this.request<void>("DELETE", "/api/v1/settings/brand-assets/:slot".replace(":slot", encodeURIComponent(String(args["slot"]))), {
|
|
5922
|
+
signal: args.signal,
|
|
5923
|
+
headers,
|
|
5924
|
+
});
|
|
5925
|
+
}
|
|
5926
|
+
|
|
5927
|
+
async getInstanceTheme(args: { signal?: AbortSignal; headers?: HeadersInit } = {}): Promise<InstanceThemeEnvelope> {
|
|
5928
|
+
const headers = new Headers(args.headers);
|
|
5929
|
+
|
|
5930
|
+
return this.request<InstanceThemeEnvelope>("GET", "/api/v1/settings/theme", {
|
|
5931
|
+
signal: args.signal,
|
|
5932
|
+
headers,
|
|
5933
|
+
});
|
|
5934
|
+
}
|
|
5935
|
+
|
|
5936
|
+
async setInstanceTheme(args: { body: InstanceThemeInput; signal?: AbortSignal; headers?: HeadersInit }): Promise<InstanceThemeEnvelope> {
|
|
5937
|
+
const headers = new Headers(args.headers);
|
|
5938
|
+
|
|
5939
|
+
return this.request<InstanceThemeEnvelope>("POST", "/api/v1/settings/theme", {
|
|
5940
|
+
body: args.body,
|
|
5941
|
+
signal: args.signal,
|
|
5942
|
+
headers,
|
|
5943
|
+
});
|
|
5944
|
+
}
|
|
5945
|
+
|
|
5946
|
+
async clearInstanceTheme(args: { signal?: AbortSignal; headers?: HeadersInit } = {}): Promise<void> {
|
|
5947
|
+
const headers = new Headers(args.headers);
|
|
5948
|
+
|
|
5949
|
+
return this.request<void>("DELETE", "/api/v1/settings/theme", {
|
|
5950
|
+
signal: args.signal,
|
|
5951
|
+
headers,
|
|
5952
|
+
});
|
|
5953
|
+
}
|
|
5954
|
+
|
|
5955
|
+
async getInvoicePaymentLink(args: { "id": number; signal?: AbortSignal; headers?: HeadersInit }): Promise<InvoicePaymentLinkEnvelope> {
|
|
5956
|
+
const headers = new Headers(args.headers);
|
|
5957
|
+
|
|
5958
|
+
return this.request<InvoicePaymentLinkEnvelope>("POST", "/api/v1/invoices/:id/payment-link".replace(":id", encodeURIComponent(String(args["id"]))), {
|
|
5959
|
+
signal: args.signal,
|
|
5960
|
+
headers,
|
|
5961
|
+
});
|
|
5962
|
+
}
|
|
5963
|
+
|
|
5964
|
+
async releaseInvoicedTime(args: { "id": number; signal?: AbortSignal; headers?: HeadersInit }): Promise<ReleasedTimeEnvelope> {
|
|
5965
|
+
const headers = new Headers(args.headers);
|
|
5966
|
+
|
|
5967
|
+
return this.request<ReleasedTimeEnvelope>("POST", "/api/v1/invoices/:id/released-time".replace(":id", encodeURIComponent(String(args["id"]))), {
|
|
5968
|
+
signal: args.signal,
|
|
5969
|
+
headers,
|
|
5970
|
+
});
|
|
5971
|
+
}
|
|
5972
|
+
|
|
5973
|
+
async getInvoiceDocumentPreference(args: { "id": number; signal?: AbortSignal; headers?: HeadersInit }): Promise<InvoiceDocumentPreferenceEnvelope> {
|
|
5974
|
+
const headers = new Headers(args.headers);
|
|
5975
|
+
|
|
5976
|
+
return this.request<InvoiceDocumentPreferenceEnvelope>("GET", "/api/v1/invoices/:id/document-preference".replace(":id", encodeURIComponent(String(args["id"]))), {
|
|
5977
|
+
signal: args.signal,
|
|
5978
|
+
headers,
|
|
5979
|
+
});
|
|
5980
|
+
}
|
|
5981
|
+
|
|
5982
|
+
async setInvoiceDocumentPreference(args: { "id": number; body: InvoiceDocumentPreferenceInput; signal?: AbortSignal; headers?: HeadersInit }): Promise<InvoiceDocumentPreferenceEnvelope> {
|
|
5983
|
+
const headers = new Headers(args.headers);
|
|
5984
|
+
|
|
5985
|
+
return this.request<InvoiceDocumentPreferenceEnvelope>("POST", "/api/v1/invoices/:id/document-preference".replace(":id", encodeURIComponent(String(args["id"]))), {
|
|
5986
|
+
body: args.body,
|
|
5987
|
+
signal: args.signal,
|
|
5988
|
+
headers,
|
|
5989
|
+
});
|
|
5990
|
+
}
|
|
5991
|
+
|
|
5992
|
+
async getInvoiceEmailDefaults(args: { "id": number; signal?: AbortSignal; headers?: HeadersInit }): Promise<InvoiceEmailDefaultsEnvelope> {
|
|
5993
|
+
const headers = new Headers(args.headers);
|
|
5994
|
+
|
|
5995
|
+
return this.request<InvoiceEmailDefaultsEnvelope>("GET", "/api/v1/invoices/:id/email-defaults".replace(":id", encodeURIComponent(String(args["id"]))), {
|
|
5996
|
+
signal: args.signal,
|
|
5997
|
+
headers,
|
|
5998
|
+
});
|
|
5999
|
+
}
|
|
6000
|
+
|
|
6001
|
+
async getClientInvoiceSending(args: { "id": number; signal?: AbortSignal; headers?: HeadersInit }): Promise<ClientInvoiceSendingEnvelope> {
|
|
6002
|
+
const headers = new Headers(args.headers);
|
|
6003
|
+
|
|
6004
|
+
return this.request<ClientInvoiceSendingEnvelope>("GET", "/api/v1/clients/:id/invoice-sending".replace(":id", encodeURIComponent(String(args["id"]))), {
|
|
6005
|
+
signal: args.signal,
|
|
6006
|
+
headers,
|
|
6007
|
+
});
|
|
6008
|
+
}
|
|
6009
|
+
|
|
6010
|
+
async setClientInvoiceSending(args: { "id": number; body: ClientInvoiceSendingInput; signal?: AbortSignal; headers?: HeadersInit }): Promise<ClientInvoiceSendingEnvelope> {
|
|
6011
|
+
const headers = new Headers(args.headers);
|
|
6012
|
+
|
|
6013
|
+
return this.request<ClientInvoiceSendingEnvelope>("POST", "/api/v1/clients/:id/invoice-sending".replace(":id", encodeURIComponent(String(args["id"]))), {
|
|
6014
|
+
body: args.body,
|
|
6015
|
+
signal: args.signal,
|
|
6016
|
+
headers,
|
|
6017
|
+
});
|
|
6018
|
+
}
|
|
6019
|
+
|
|
6020
|
+
async getOrganizationInvoiceSending(args: { signal?: AbortSignal; headers?: HeadersInit } = {}): Promise<OrganizationInvoiceSendingEnvelope> {
|
|
6021
|
+
const headers = new Headers(args.headers);
|
|
6022
|
+
|
|
6023
|
+
return this.request<OrganizationInvoiceSendingEnvelope>("GET", "/api/v1/settings/invoice-sending", {
|
|
6024
|
+
signal: args.signal,
|
|
6025
|
+
headers,
|
|
6026
|
+
});
|
|
6027
|
+
}
|
|
6028
|
+
|
|
6029
|
+
async setOrganizationInvoiceSending(args: { body: OrganizationInvoiceSendingInput; signal?: AbortSignal; headers?: HeadersInit }): Promise<OrganizationInvoiceSendingEnvelope> {
|
|
6030
|
+
const headers = new Headers(args.headers);
|
|
6031
|
+
|
|
6032
|
+
return this.request<OrganizationInvoiceSendingEnvelope>("POST", "/api/v1/settings/invoice-sending", {
|
|
6033
|
+
body: args.body,
|
|
6034
|
+
signal: args.signal,
|
|
6035
|
+
headers,
|
|
6036
|
+
});
|
|
6037
|
+
}
|
|
6038
|
+
|
|
6039
|
+
async getOrganizationInvoiceDocuments(args: { signal?: AbortSignal; headers?: HeadersInit } = {}): Promise<OrganizationInvoiceDocumentsEnvelope> {
|
|
6040
|
+
const headers = new Headers(args.headers);
|
|
6041
|
+
|
|
6042
|
+
return this.request<OrganizationInvoiceDocumentsEnvelope>("GET", "/api/v1/settings/invoice-documents", {
|
|
6043
|
+
signal: args.signal,
|
|
6044
|
+
headers,
|
|
6045
|
+
});
|
|
6046
|
+
}
|
|
6047
|
+
|
|
6048
|
+
async setOrganizationInvoiceDocuments(args: { body: OrganizationInvoiceDocumentsInput; signal?: AbortSignal; headers?: HeadersInit }): Promise<OrganizationInvoiceDocumentsEnvelope> {
|
|
6049
|
+
const headers = new Headers(args.headers);
|
|
6050
|
+
|
|
6051
|
+
return this.request<OrganizationInvoiceDocumentsEnvelope>("POST", "/api/v1/settings/invoice-documents", {
|
|
6052
|
+
body: args.body,
|
|
6053
|
+
signal: args.signal,
|
|
6054
|
+
headers,
|
|
6055
|
+
});
|
|
6056
|
+
}
|
|
6057
|
+
|
|
6058
|
+
async downloadInvoiceHoursReport(args: { "id": number; query: { "format": "pdf" | "csv" | "xlsx"; "detail"?: "detailed" | "summary" }; signal?: AbortSignal; headers?: HeadersInit }): Promise<ArrayBuffer> {
|
|
6059
|
+
const headers = new Headers(args.headers);
|
|
6060
|
+
|
|
6061
|
+
return this.request<ArrayBuffer>("GET", "/api/v1/invoices/:id/hours-report".replace(":id", encodeURIComponent(String(args["id"]))), {
|
|
6062
|
+
query: args.query,
|
|
6063
|
+
signal: args.signal,
|
|
6064
|
+
binary: true,
|
|
6065
|
+
headers,
|
|
6066
|
+
});
|
|
6067
|
+
}
|
|
6068
|
+
|
|
6069
|
+
async getInvoiceDefaults(args: { signal?: AbortSignal; headers?: HeadersInit } = {}): Promise<InvoiceDefaultsEnvelope> {
|
|
6070
|
+
const headers = new Headers(args.headers);
|
|
6071
|
+
|
|
6072
|
+
return this.request<InvoiceDefaultsEnvelope>("GET", "/api/v1/settings/invoice-defaults", {
|
|
6073
|
+
signal: args.signal,
|
|
6074
|
+
headers,
|
|
6075
|
+
});
|
|
6076
|
+
}
|
|
6077
|
+
|
|
6078
|
+
async updateInvoiceDefaults(args: { body: InvoiceDefaultsInput; signal?: AbortSignal; headers?: HeadersInit }): Promise<InvoiceDefaultsEnvelope> {
|
|
6079
|
+
const headers = new Headers(args.headers);
|
|
6080
|
+
|
|
6081
|
+
return this.request<InvoiceDefaultsEnvelope>("POST", "/api/v1/settings/invoice-defaults", {
|
|
6082
|
+
body: args.body,
|
|
6083
|
+
signal: args.signal,
|
|
6084
|
+
headers,
|
|
6085
|
+
});
|
|
6086
|
+
}
|
|
6087
|
+
|
|
6088
|
+
async getInvoiceThankYouPreference(args: { "id": number; signal?: AbortSignal; headers?: HeadersInit }): Promise<InvoiceThankYouPreferenceEnvelope> {
|
|
6089
|
+
const headers = new Headers(args.headers);
|
|
6090
|
+
|
|
6091
|
+
return this.request<InvoiceThankYouPreferenceEnvelope>("GET", "/api/v1/invoices/:id/thank-you-preference".replace(":id", encodeURIComponent(String(args["id"]))), {
|
|
6092
|
+
signal: args.signal,
|
|
6093
|
+
headers,
|
|
6094
|
+
});
|
|
6095
|
+
}
|
|
6096
|
+
|
|
6097
|
+
async setInvoiceThankYouPreference(args: { "id": number; signal?: AbortSignal; headers?: HeadersInit }): Promise<InvoiceThankYouPreferenceEnvelope> {
|
|
6098
|
+
const headers = new Headers(args.headers);
|
|
6099
|
+
|
|
6100
|
+
return this.request<InvoiceThankYouPreferenceEnvelope>("POST", "/api/v1/invoices/:id/thank-you-preference".replace(":id", encodeURIComponent(String(args["id"]))), {
|
|
6101
|
+
signal: args.signal,
|
|
6102
|
+
headers,
|
|
6103
|
+
});
|
|
6104
|
+
}
|
|
6105
|
+
|
|
6106
|
+
async getOrganizationInvoiceThankYou(args: { signal?: AbortSignal; headers?: HeadersInit } = {}): Promise<OrganizationInvoiceThankYouEnvelope> {
|
|
6107
|
+
const headers = new Headers(args.headers);
|
|
6108
|
+
|
|
6109
|
+
return this.request<OrganizationInvoiceThankYouEnvelope>("GET", "/api/v1/settings/invoice-thank-you", {
|
|
6110
|
+
signal: args.signal,
|
|
6111
|
+
headers,
|
|
6112
|
+
});
|
|
6113
|
+
}
|
|
6114
|
+
|
|
6115
|
+
async setOrganizationInvoiceThankYou(args: { signal?: AbortSignal; headers?: HeadersInit } = {}): Promise<OrganizationInvoiceThankYouEnvelope> {
|
|
6116
|
+
const headers = new Headers(args.headers);
|
|
6117
|
+
|
|
6118
|
+
return this.request<OrganizationInvoiceThankYouEnvelope>("POST", "/api/v1/settings/invoice-thank-you", {
|
|
6119
|
+
signal: args.signal,
|
|
6120
|
+
headers,
|
|
6121
|
+
});
|
|
6122
|
+
}
|
|
6123
|
+
|
|
6124
|
+
async getOrganizationInvoiceReminders(args: { signal?: AbortSignal; headers?: HeadersInit } = {}): Promise<OrganizationInvoiceRemindersEnvelope> {
|
|
6125
|
+
const headers = new Headers(args.headers);
|
|
6126
|
+
|
|
6127
|
+
return this.request<OrganizationInvoiceRemindersEnvelope>("GET", "/api/v1/settings/invoice-reminders", {
|
|
6128
|
+
signal: args.signal,
|
|
6129
|
+
headers,
|
|
6130
|
+
});
|
|
6131
|
+
}
|
|
6132
|
+
|
|
6133
|
+
async setOrganizationInvoiceReminders(args: { body: OrganizationInvoiceRemindersInput; signal?: AbortSignal; headers?: HeadersInit }): Promise<OrganizationInvoiceRemindersEnvelope> {
|
|
6134
|
+
const headers = new Headers(args.headers);
|
|
6135
|
+
|
|
6136
|
+
return this.request<OrganizationInvoiceRemindersEnvelope>("POST", "/api/v1/settings/invoice-reminders", {
|
|
6137
|
+
body: args.body,
|
|
6138
|
+
signal: args.signal,
|
|
6139
|
+
headers,
|
|
6140
|
+
});
|
|
6141
|
+
}
|
|
6142
|
+
|
|
6143
|
+
async getInvoiceReminderPreference(args: { "id": number; signal?: AbortSignal; headers?: HeadersInit }): Promise<InvoiceReminderPreferenceEnvelope> {
|
|
6144
|
+
const headers = new Headers(args.headers);
|
|
6145
|
+
|
|
6146
|
+
return this.request<InvoiceReminderPreferenceEnvelope>("GET", "/api/v1/invoices/:id/reminder-preference".replace(":id", encodeURIComponent(String(args["id"]))), {
|
|
6147
|
+
signal: args.signal,
|
|
6148
|
+
headers,
|
|
6149
|
+
});
|
|
6150
|
+
}
|
|
6151
|
+
|
|
6152
|
+
async setInvoiceReminderPreference(args: { "id": number; body: InvoiceReminderPreferenceInput; signal?: AbortSignal; headers?: HeadersInit }): Promise<InvoiceReminderPreferenceEnvelope> {
|
|
6153
|
+
const headers = new Headers(args.headers);
|
|
6154
|
+
|
|
6155
|
+
return this.request<InvoiceReminderPreferenceEnvelope>("POST", "/api/v1/invoices/:id/reminder-preference".replace(":id", encodeURIComponent(String(args["id"]))), {
|
|
6156
|
+
body: args.body,
|
|
6157
|
+
signal: args.signal,
|
|
6158
|
+
headers,
|
|
6159
|
+
});
|
|
6160
|
+
}
|
|
6161
|
+
|
|
6162
|
+
async listIncompleteRecurringInvoices(args: { signal?: AbortSignal; headers?: HeadersInit } = {}): Promise<IncompleteRecurringInvoiceListEnvelope> {
|
|
6163
|
+
const headers = new Headers(args.headers);
|
|
6164
|
+
|
|
6165
|
+
return this.request<IncompleteRecurringInvoiceListEnvelope>("GET", "/api/v1/recurring-invoices/incomplete", {
|
|
6166
|
+
signal: args.signal,
|
|
6167
|
+
headers,
|
|
6168
|
+
});
|
|
6169
|
+
}
|
|
6170
|
+
|
|
6171
|
+
async completeRecurringInvoiceDefinition(args: { "id": number; signal?: AbortSignal; headers?: HeadersInit }): Promise<RecurringInvoiceCompletionEnvelope> {
|
|
6172
|
+
const headers = new Headers(args.headers);
|
|
6173
|
+
|
|
6174
|
+
return this.request<RecurringInvoiceCompletionEnvelope>("POST", "/api/v1/recurring-invoices/:id/completion".replace(":id", encodeURIComponent(String(args["id"]))), {
|
|
6175
|
+
signal: args.signal,
|
|
6176
|
+
headers,
|
|
6177
|
+
});
|
|
6178
|
+
}
|
|
6179
|
+
|
|
6180
|
+
async listPayoutAccounts(args: { "id": number; signal?: AbortSignal; headers?: HeadersInit }): Promise<PayoutAccountListEnvelope> {
|
|
6181
|
+
const headers = new Headers(args.headers);
|
|
6182
|
+
|
|
6183
|
+
return this.request<PayoutAccountListEnvelope>("GET", "/api/v1/users/:id/payout-accounts".replace(":id", encodeURIComponent(String(args["id"]))), {
|
|
6184
|
+
signal: args.signal,
|
|
6185
|
+
headers,
|
|
6186
|
+
});
|
|
6187
|
+
}
|
|
6188
|
+
|
|
6189
|
+
async linkPayoutAccount(args: { "id": number; body: PayoutAccountInput; signal?: AbortSignal; headers?: HeadersInit }): Promise<PayoutAccountEnvelope> {
|
|
6190
|
+
const headers = new Headers(args.headers);
|
|
6191
|
+
|
|
6192
|
+
return this.request<PayoutAccountEnvelope>("POST", "/api/v1/users/:id/payout-accounts".replace(":id", encodeURIComponent(String(args["id"]))), {
|
|
6193
|
+
body: args.body,
|
|
6194
|
+
signal: args.signal,
|
|
6195
|
+
headers,
|
|
6196
|
+
});
|
|
6197
|
+
}
|
|
6198
|
+
|
|
6199
|
+
async detachPayoutAccount(args: { "id": number; signal?: AbortSignal; headers?: HeadersInit }): Promise<void> {
|
|
6200
|
+
const headers = new Headers(args.headers);
|
|
6201
|
+
|
|
6202
|
+
return this.request<void>("DELETE", "/api/v1/payout-accounts/:id".replace(":id", encodeURIComponent(String(args["id"]))), {
|
|
6203
|
+
signal: args.signal,
|
|
6204
|
+
headers,
|
|
6205
|
+
});
|
|
6206
|
+
}
|
|
6207
|
+
|
|
6208
|
+
async getBillStatus(args: { signal?: AbortSignal; headers?: HeadersInit } = {}): Promise<BillStatusEnvelope> {
|
|
6209
|
+
const headers = new Headers(args.headers);
|
|
6210
|
+
|
|
6211
|
+
return this.request<BillStatusEnvelope>("GET", "/api/v1/integrations/bill", {
|
|
6212
|
+
signal: args.signal,
|
|
6213
|
+
headers,
|
|
6214
|
+
});
|
|
6215
|
+
}
|
|
6216
|
+
|
|
6217
|
+
async getBillClientDelivery(args: { "id": number; signal?: AbortSignal; headers?: HeadersInit }): Promise<BillClientDeliveryEnvelope> {
|
|
6218
|
+
const headers = new Headers(args.headers);
|
|
6219
|
+
|
|
6220
|
+
return this.request<BillClientDeliveryEnvelope>("GET", "/api/v1/integrations/bill/clients/:id".replace(":id", encodeURIComponent(String(args["id"]))), {
|
|
6221
|
+
signal: args.signal,
|
|
6222
|
+
headers,
|
|
6223
|
+
});
|
|
6224
|
+
}
|
|
6225
|
+
|
|
6226
|
+
async setBillClientDelivery(args: { "id": number; body: BillClientDeliveryInput; signal?: AbortSignal; headers?: HeadersInit }): Promise<BillClientDeliveryEnvelope> {
|
|
6227
|
+
const headers = new Headers(args.headers);
|
|
6228
|
+
|
|
6229
|
+
return this.request<BillClientDeliveryEnvelope>("POST", "/api/v1/integrations/bill/clients/:id".replace(":id", encodeURIComponent(String(args["id"]))), {
|
|
6230
|
+
body: args.body,
|
|
6231
|
+
signal: args.signal,
|
|
6232
|
+
headers,
|
|
6233
|
+
});
|
|
6234
|
+
}
|
|
6235
|
+
|
|
6236
|
+
async getTwoFactorStatus(args: { signal?: AbortSignal; headers?: HeadersInit } = {}): Promise<TwoFactorStatusEnvelope> {
|
|
6237
|
+
const headers = new Headers(args.headers);
|
|
6238
|
+
|
|
6239
|
+
return this.request<TwoFactorStatusEnvelope>("GET", "/api/v1/two-factor", {
|
|
6240
|
+
signal: args.signal,
|
|
6241
|
+
headers,
|
|
6242
|
+
});
|
|
6243
|
+
}
|
|
6244
|
+
|
|
6245
|
+
async beginTwoFactorEnrolment(args: { signal?: AbortSignal; headers?: HeadersInit } = {}): Promise<TwoFactorEnrolmentEnvelope> {
|
|
6246
|
+
const headers = new Headers(args.headers);
|
|
6247
|
+
|
|
6248
|
+
return this.request<TwoFactorEnrolmentEnvelope>("POST", "/api/v1/two-factor", {
|
|
4352
6249
|
signal: args.signal,
|
|
4353
6250
|
headers,
|
|
4354
6251
|
});
|
|
@@ -4461,6 +6358,16 @@ export class EzactoClient {
|
|
|
4461
6358
|
});
|
|
4462
6359
|
}
|
|
4463
6360
|
|
|
6361
|
+
async removeTeamPersonRate(args: { "id": number; "rateId": number; "Idempotency-Key": string; body: TeamRateRemovalInput; signal?: AbortSignal; headers?: HeadersInit }): Promise<TeamCommandReceiptEnvelope> {
|
|
6362
|
+
const headers = new Headers(args.headers);
|
|
6363
|
+
if (args["Idempotency-Key"] !== undefined) headers.set("Idempotency-Key", String(args["Idempotency-Key"]));
|
|
6364
|
+
return this.request<TeamCommandReceiptEnvelope>("DELETE", "/api/v1/team/people/:id/rates/:rateId".replace(":id", encodeURIComponent(String(args["id"]))).replace(":rateId", encodeURIComponent(String(args["rateId"]))), {
|
|
6365
|
+
body: args.body,
|
|
6366
|
+
signal: args.signal,
|
|
6367
|
+
headers,
|
|
6368
|
+
});
|
|
6369
|
+
}
|
|
6370
|
+
|
|
4464
6371
|
async listClientAncestors(args: { "id": number; signal?: AbortSignal; headers?: HeadersInit }): Promise<ClientHierarchyListEnvelope> {
|
|
4465
6372
|
const headers = new Headers(args.headers);
|
|
4466
6373
|
|