@snokam/mcp-api 0.5.1

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.
@@ -0,0 +1,2383 @@
1
+ {
2
+ "openapi": "3.0.1",
3
+ "info": {
4
+ "title": "Power Office Function",
5
+ "description": "Integration with PowerOffice to calculate and pay out salaries",
6
+ "version": "v1.0.0"
7
+ },
8
+ "servers": [
9
+ {
10
+ "url": "https://power-office.api.test.snokam.no"
11
+ }
12
+ ],
13
+ "paths": {
14
+ "/v1.0/users": {
15
+ "get": {
16
+ "tags": [
17
+ "Users"
18
+ ],
19
+ "summary": "Gets a list of users",
20
+ "description": "Retrieves a list of users.",
21
+ "operationId": "GetUsers",
22
+ "responses": {
23
+ "200": {
24
+ "description": "Get power office users",
25
+ "content": {
26
+ "application/json": {
27
+ "schema": {
28
+ "type": "array",
29
+ "items": {
30
+ "$ref": "#/components/schemas/employee"
31
+ }
32
+ }
33
+ }
34
+ },
35
+ "x-ms-summary": "Success"
36
+ },
37
+ "401": {
38
+ "description": "Unauthorized access",
39
+ "x-ms-summary": "Unauthorized"
40
+ }
41
+ },
42
+ "security": [
43
+ {
44
+ "Implicit": [
45
+ "api://03e636b8-8502-46e4-a641-04e58b2f0795/user_impersonation"
46
+ ]
47
+ }
48
+ ]
49
+ }
50
+ },
51
+ "/v1.0/hours/last-month/me": {
52
+ "get": {
53
+ "tags": [
54
+ "Hours"
55
+ ],
56
+ "summary": "Gets my hours for last month",
57
+ "description": "Retrieves the hours logged by the current user for the last month.",
58
+ "operationId": "GetMyHoursLastMonth",
59
+ "responses": {
60
+ "200": {
61
+ "description": "Hours retrieved",
62
+ "content": {
63
+ "application/json": {
64
+ "schema": {
65
+ "type": "array",
66
+ "items": {
67
+ "$ref": "#/components/schemas/timeTransaction"
68
+ }
69
+ }
70
+ }
71
+ },
72
+ "x-ms-summary": "Success"
73
+ }
74
+ },
75
+ "security": [
76
+ {
77
+ "Implicit": [
78
+ "api://03e636b8-8502-46e4-a641-04e58b2f0795/user_impersonation"
79
+ ]
80
+ }
81
+ ]
82
+ }
83
+ },
84
+ "/v1.0/projects/me": {
85
+ "get": {
86
+ "tags": [
87
+ "Projects"
88
+ ],
89
+ "summary": "Gets my projects",
90
+ "description": "Retrieves my projects.",
91
+ "operationId": "GetMyProjects",
92
+ "responses": {
93
+ "200": {
94
+ "description": "My projects retrieved",
95
+ "content": {
96
+ "application/json": {
97
+ "schema": {
98
+ "$ref": "#/components/schemas/employeeProjects"
99
+ }
100
+ }
101
+ },
102
+ "x-ms-summary": "Success"
103
+ }
104
+ },
105
+ "security": [
106
+ {
107
+ "Implicit": [
108
+ "api://03e636b8-8502-46e4-a641-04e58b2f0795/user_impersonation"
109
+ ]
110
+ }
111
+ ]
112
+ }
113
+ },
114
+ "/v1.0/projects/all": {
115
+ "get": {
116
+ "tags": [
117
+ "Projects"
118
+ ],
119
+ "summary": "Gets all projects",
120
+ "description": "Retrieves all projects.",
121
+ "operationId": "GetAllProjects",
122
+ "responses": {
123
+ "200": {
124
+ "description": "My projects retrieved",
125
+ "content": {
126
+ "application/json": {
127
+ "schema": {
128
+ "type": "array",
129
+ "items": {
130
+ "$ref": "#/components/schemas/employeeProjects"
131
+ }
132
+ }
133
+ }
134
+ },
135
+ "x-ms-summary": "Success"
136
+ }
137
+ },
138
+ "security": [
139
+ {
140
+ "Implicit": [
141
+ "api://03e636b8-8502-46e4-a641-04e58b2f0795/user_impersonation"
142
+ ]
143
+ }
144
+ ]
145
+ }
146
+ },
147
+ "/v1.0/projects/average-hourly-rate": {
148
+ "get": {
149
+ "tags": [
150
+ "Projects"
151
+ ],
152
+ "summary": "Gets average hourly rate",
153
+ "description": "Average hourly rate across active projects. Cached in blob storage, auto-refreshed hourly. Returns null if none found.",
154
+ "operationId": "GetAverageHourlyRate",
155
+ "responses": {
156
+ "200": {
157
+ "description": "Payload of Nullable containing Int32",
158
+ "content": {
159
+ "application/json": {
160
+ "schema": {
161
+ "type": "integer",
162
+ "format": "int32",
163
+ "nullable": true
164
+ }
165
+ }
166
+ },
167
+ "x-ms-summary": "Success"
168
+ }
169
+ },
170
+ "security": [
171
+ {
172
+ "Implicit": [
173
+ "api://03e636b8-8502-46e4-a641-04e58b2f0795/user_impersonation"
174
+ ]
175
+ }
176
+ ]
177
+ }
178
+ },
179
+ "/v1.0/hours/summary/last-month/me": {
180
+ "get": {
181
+ "tags": [
182
+ "Hours"
183
+ ],
184
+ "summary": "Gets my hours by activity for last month",
185
+ "description": "Retrieves the hours logged by the current user by activity for the last month.",
186
+ "operationId": "GetMyHoursByActivityLastMonth",
187
+ "responses": {
188
+ "200": {
189
+ "description": "Hours by activity retrieved",
190
+ "content": {
191
+ "application/json": {
192
+ "schema": {
193
+ "type": "array",
194
+ "items": {
195
+ "$ref": "#/components/schemas/timeTransactionSummary"
196
+ }
197
+ }
198
+ }
199
+ },
200
+ "x-ms-summary": "Success"
201
+ }
202
+ },
203
+ "security": [
204
+ {
205
+ "Implicit": [
206
+ "api://03e636b8-8502-46e4-a641-04e58b2f0795/user_impersonation"
207
+ ]
208
+ }
209
+ ]
210
+ }
211
+ },
212
+ "/v1.0/hours/summary": {
213
+ "get": {
214
+ "tags": [
215
+ "Hours"
216
+ ],
217
+ "summary": "Gets my hours by activity",
218
+ "description": "Retrieves the hours logged by the current user by activity.",
219
+ "operationId": "GetHoursByActivity",
220
+ "parameters": [
221
+ {
222
+ "name": "from",
223
+ "in": "query",
224
+ "description": "",
225
+ "schema": {
226
+ "type": "string",
227
+ "format": "date-time"
228
+ },
229
+ "x-ms-summary": "Date from"
230
+ },
231
+ {
232
+ "name": "to",
233
+ "in": "query",
234
+ "description": "",
235
+ "schema": {
236
+ "type": "string",
237
+ "format": "date-time"
238
+ },
239
+ "x-ms-summary": "Date to"
240
+ }
241
+ ],
242
+ "responses": {
243
+ "200": {
244
+ "description": "Hours by activity retrieved",
245
+ "content": {
246
+ "application/json": {
247
+ "schema": {
248
+ "type": "array",
249
+ "items": {
250
+ "$ref": "#/components/schemas/employeeTimeTransactionSummary"
251
+ }
252
+ }
253
+ }
254
+ },
255
+ "x-ms-summary": "Success"
256
+ }
257
+ },
258
+ "security": [
259
+ {
260
+ "Implicit": [
261
+ "api://03e636b8-8502-46e4-a641-04e58b2f0795/user_impersonation"
262
+ ]
263
+ }
264
+ ]
265
+ }
266
+ },
267
+ "/v1.0/hours/summary/last-month": {
268
+ "get": {
269
+ "tags": [
270
+ "Hours"
271
+ ],
272
+ "summary": "Gets hours by activity for last month",
273
+ "description": "Retrieves the hours logged by all users by activity for the last month.",
274
+ "operationId": "GetHoursByActivityLastMonth",
275
+ "responses": {
276
+ "200": {
277
+ "description": "Hours by activity retrieved",
278
+ "content": {
279
+ "application/json": {
280
+ "schema": {
281
+ "type": "array",
282
+ "items": {
283
+ "$ref": "#/components/schemas/employeeTimeTransactionSummary"
284
+ }
285
+ }
286
+ }
287
+ },
288
+ "x-ms-summary": "Success"
289
+ },
290
+ "401": {
291
+ "description": "Unauthorized access",
292
+ "x-ms-summary": "Unauthorized"
293
+ }
294
+ },
295
+ "security": [
296
+ {
297
+ "Implicit": [
298
+ "api://03e636b8-8502-46e4-a641-04e58b2f0795/user_impersonation"
299
+ ]
300
+ }
301
+ ]
302
+ }
303
+ },
304
+ "/v1.0/hours/last-month": {
305
+ "get": {
306
+ "tags": [
307
+ "Hours"
308
+ ],
309
+ "summary": "Gets hours for last month",
310
+ "description": "Retrieves the hours logged by all users for the last month.",
311
+ "operationId": "GetHoursLastMonth",
312
+ "responses": {
313
+ "200": {
314
+ "description": "Hours retrieved",
315
+ "content": {
316
+ "application/json": {
317
+ "schema": {
318
+ "type": "array",
319
+ "items": {
320
+ "$ref": "#/components/schemas/employeeHoursLastMonth"
321
+ }
322
+ }
323
+ }
324
+ },
325
+ "x-ms-summary": "Success"
326
+ },
327
+ "401": {
328
+ "description": "Unauthorized access",
329
+ "x-ms-summary": "Unauthorized"
330
+ }
331
+ },
332
+ "security": [
333
+ {
334
+ "Implicit": [
335
+ "api://03e636b8-8502-46e4-a641-04e58b2f0795/user_impersonation"
336
+ ]
337
+ }
338
+ ]
339
+ }
340
+ },
341
+ "/v1.0/hours/current-month/locked/users": {
342
+ "get": {
343
+ "tags": [
344
+ "Timesheets"
345
+ ],
346
+ "summary": "Gets users with locked timesheets for current month",
347
+ "description": "Retrieves a list of users with locked timesheets for the current month.",
348
+ "operationId": "GetUsersWithLockedTimesheetsCurrentMonth",
349
+ "parameters": [
350
+ {
351
+ "name": "monthOffset",
352
+ "in": "query",
353
+ "description": "The month offset to apply when retrieving locked timesheets.",
354
+ "schema": {
355
+ "type": "integer",
356
+ "format": "int32"
357
+ },
358
+ "x-ms-summary": "Month offset"
359
+ }
360
+ ],
361
+ "responses": {
362
+ "200": {
363
+ "description": "Users with locked timesheets retrieved",
364
+ "content": {
365
+ "application/json": {
366
+ "schema": {
367
+ "type": "array",
368
+ "items": {
369
+ "type": "string"
370
+ }
371
+ }
372
+ }
373
+ },
374
+ "x-ms-summary": "Success"
375
+ },
376
+ "400": {
377
+ "description": "Invalid month offset value",
378
+ "x-ms-summary": "Bad Request"
379
+ }
380
+ },
381
+ "security": [
382
+ {
383
+ "Implicit": [
384
+ "api://03e636b8-8502-46e4-a641-04e58b2f0795/user_impersonation"
385
+ ]
386
+ }
387
+ ]
388
+ }
389
+ },
390
+ "/v1.0/hours/current-year/statistics": {
391
+ "get": {
392
+ "tags": [
393
+ "Statistics"
394
+ ],
395
+ "summary": "Gets hours by activity statistics for current year",
396
+ "description": "Retrieves the hours logged by activity statistics for the current year.",
397
+ "operationId": "GetHoursByActivityStatisticsCurrentYear",
398
+ "responses": {
399
+ "200": {
400
+ "description": "Hours by activity statistics retrieved",
401
+ "content": {
402
+ "application/json": {
403
+ "schema": {
404
+ "type": "object",
405
+ "additionalProperties": {
406
+ "type": "number",
407
+ "format": "double"
408
+ }
409
+ }
410
+ }
411
+ },
412
+ "x-ms-summary": "Success"
413
+ }
414
+ },
415
+ "security": [
416
+ {
417
+ "Implicit": [
418
+ "api://03e636b8-8502-46e4-a641-04e58b2f0795/user_impersonation"
419
+ ]
420
+ }
421
+ ]
422
+ }
423
+ },
424
+ "/v1.0/salary/last-month/me": {
425
+ "get": {
426
+ "tags": [
427
+ "Salary"
428
+ ],
429
+ "summary": "Gets my salary for last month",
430
+ "description": "Retrieves the salary of the current user for the last month.",
431
+ "operationId": "GetMySalaryLastMonth",
432
+ "responses": {
433
+ "200": {
434
+ "description": "Salary retrieved",
435
+ "content": {
436
+ "application/json": {
437
+ "schema": {
438
+ "$ref": "#/components/schemas/detailedSalaryWithSalaryLines"
439
+ }
440
+ }
441
+ },
442
+ "x-ms-summary": "Success"
443
+ }
444
+ },
445
+ "security": [
446
+ {
447
+ "Implicit": [
448
+ "api://03e636b8-8502-46e4-a641-04e58b2f0795/user_impersonation"
449
+ ]
450
+ }
451
+ ]
452
+ }
453
+ },
454
+ "/v1.0/salary/this-month/me": {
455
+ "get": {
456
+ "tags": [
457
+ "Salary"
458
+ ],
459
+ "summary": "Gets my salary for this month",
460
+ "description": "Retrieves the salary of the current user this month.",
461
+ "operationId": "GetMySalaryThisMonth",
462
+ "responses": {
463
+ "200": {
464
+ "description": "Salary retrieved",
465
+ "content": {
466
+ "application/json": {
467
+ "schema": {
468
+ "$ref": "#/components/schemas/detailedSalaryWithSalaryLines"
469
+ }
470
+ }
471
+ },
472
+ "x-ms-summary": "Success"
473
+ }
474
+ },
475
+ "security": [
476
+ {
477
+ "Implicit": [
478
+ "api://03e636b8-8502-46e4-a641-04e58b2f0795/user_impersonation"
479
+ ]
480
+ }
481
+ ]
482
+ }
483
+ },
484
+ "/v1.0/salary/last-month": {
485
+ "get": {
486
+ "tags": [
487
+ "Salary"
488
+ ],
489
+ "summary": "Gets salaries for last month",
490
+ "description": "Retrieves the salaries of all users for the last month.",
491
+ "operationId": "GetSalariesLastMonth",
492
+ "responses": {
493
+ "200": {
494
+ "description": "Salaries retrieved",
495
+ "content": {
496
+ "application/json": {
497
+ "schema": {
498
+ "type": "array",
499
+ "items": {
500
+ "$ref": "#/components/schemas/employeeDetailedSalary"
501
+ }
502
+ }
503
+ }
504
+ },
505
+ "x-ms-summary": "Success"
506
+ },
507
+ "401": {
508
+ "description": "Unauthorized access",
509
+ "x-ms-summary": "Unauthorized"
510
+ }
511
+ },
512
+ "security": [
513
+ {
514
+ "Implicit": [
515
+ "api://03e636b8-8502-46e4-a641-04e58b2f0795/user_impersonation"
516
+ ]
517
+ }
518
+ ]
519
+ }
520
+ },
521
+ "/v1.0/salary/this-month": {
522
+ "get": {
523
+ "tags": [
524
+ "Salary"
525
+ ],
526
+ "summary": "Gets salaries for last month",
527
+ "description": "Retrieves the salaries of all users this month.",
528
+ "operationId": "GetSalariesThisMonth",
529
+ "responses": {
530
+ "200": {
531
+ "description": "Salaries retrieved",
532
+ "content": {
533
+ "application/json": {
534
+ "schema": {
535
+ "type": "array",
536
+ "items": {
537
+ "$ref": "#/components/schemas/employeeDetailedSalary"
538
+ }
539
+ }
540
+ }
541
+ },
542
+ "x-ms-summary": "Success"
543
+ },
544
+ "401": {
545
+ "description": "Unauthorized access",
546
+ "x-ms-summary": "Unauthorized"
547
+ }
548
+ },
549
+ "security": [
550
+ {
551
+ "Implicit": [
552
+ "api://03e636b8-8502-46e4-a641-04e58b2f0795/user_impersonation"
553
+ ]
554
+ }
555
+ ]
556
+ }
557
+ },
558
+ "/v1.0/salary/estimate/me": {
559
+ "get": {
560
+ "tags": [
561
+ "Salary"
562
+ ],
563
+ "summary": "Estimates my salary",
564
+ "description": "Estimates the salary of the current user based on logged hours.",
565
+ "operationId": "EstimateMySalary",
566
+ "responses": {
567
+ "200": {
568
+ "description": "Salary estimated",
569
+ "content": {
570
+ "application/json": {
571
+ "schema": {
572
+ "$ref": "#/components/schemas/estimatedSalary"
573
+ }
574
+ }
575
+ },
576
+ "x-ms-summary": "Success"
577
+ }
578
+ },
579
+ "security": [
580
+ {
581
+ "Implicit": [
582
+ "api://03e636b8-8502-46e4-a641-04e58b2f0795/user_impersonation"
583
+ ]
584
+ }
585
+ ]
586
+ }
587
+ },
588
+ "/v1.0/salary/estimate": {
589
+ "get": {
590
+ "tags": [
591
+ "Salary"
592
+ ],
593
+ "summary": "Estimates salaries",
594
+ "description": "Estimates the salaries of all users based on logged hours.",
595
+ "operationId": "EstimateSalaries",
596
+ "responses": {
597
+ "200": {
598
+ "description": "Salaries estimated",
599
+ "content": {
600
+ "application/json": {
601
+ "schema": {
602
+ "type": "array",
603
+ "items": {
604
+ "$ref": "#/components/schemas/employeeEstimatedSalary"
605
+ }
606
+ }
607
+ }
608
+ },
609
+ "x-ms-summary": "Success"
610
+ },
611
+ "401": {
612
+ "description": "Unauthorized access",
613
+ "x-ms-summary": "Unauthorized"
614
+ }
615
+ },
616
+ "security": [
617
+ {
618
+ "Implicit": [
619
+ "api://03e636b8-8502-46e4-a641-04e58b2f0795/user_impersonation"
620
+ ]
621
+ }
622
+ ]
623
+ }
624
+ },
625
+ "/v1.0/salary-lines": {
626
+ "get": {
627
+ "tags": [
628
+ "Salary"
629
+ ],
630
+ "summary": "Gets salary lines",
631
+ "description": "Retrieves the salary lines for all users.",
632
+ "operationId": "GetSalaryLines",
633
+ "responses": {
634
+ "200": {
635
+ "description": "Salary lines retrieved",
636
+ "content": {
637
+ "application/json": {
638
+ "schema": {
639
+ "type": "array",
640
+ "items": {
641
+ "$ref": "#/components/schemas/salaryLine"
642
+ }
643
+ }
644
+ }
645
+ },
646
+ "x-ms-summary": "Success"
647
+ },
648
+ "401": {
649
+ "description": "Unauthorized access",
650
+ "x-ms-summary": "Unauthorized"
651
+ }
652
+ },
653
+ "security": [
654
+ {
655
+ "Implicit": [
656
+ "api://03e636b8-8502-46e4-a641-04e58b2f0795/user_impersonation"
657
+ ]
658
+ }
659
+ ]
660
+ }
661
+ },
662
+ "/v1.0/pay-items": {
663
+ "get": {
664
+ "tags": [
665
+ "Pay Items"
666
+ ],
667
+ "summary": "Gets pay items",
668
+ "description": "Retrieves the pay items for all users.",
669
+ "operationId": "GetPayItems",
670
+ "responses": {
671
+ "200": {
672
+ "description": "Pay items retrieved",
673
+ "content": {
674
+ "application/json": {
675
+ "schema": {
676
+ "type": "array",
677
+ "items": {
678
+ "$ref": "#/components/schemas/payItem"
679
+ }
680
+ }
681
+ }
682
+ },
683
+ "x-ms-summary": "Success"
684
+ },
685
+ "401": {
686
+ "description": "Unauthorized access",
687
+ "x-ms-summary": "Unauthorized"
688
+ }
689
+ },
690
+ "security": [
691
+ {
692
+ "Implicit": [
693
+ "api://03e636b8-8502-46e4-a641-04e58b2f0795/user_impersonation"
694
+ ]
695
+ }
696
+ ]
697
+ }
698
+ },
699
+ "/v1.0/import/salary/last-month": {
700
+ "post": {
701
+ "tags": [
702
+ "Salary"
703
+ ],
704
+ "summary": "Imports salary for last month",
705
+ "description": "Imports the salary for the last month for specified employees.",
706
+ "operationId": "ImportSalaryLastMonth",
707
+ "parameters": [
708
+ {
709
+ "name": "includeCryptoVouchers",
710
+ "in": "query",
711
+ "description": "Decide if we want to include and import crypto vouchers",
712
+ "schema": {
713
+ "type": "boolean"
714
+ },
715
+ "x-ms-summary": "Include crypto vouchers"
716
+ }
717
+ ],
718
+ "requestBody": {
719
+ "description": "List of employee IDs to filter",
720
+ "content": {
721
+ "application/json": {
722
+ "schema": {
723
+ "type": "array",
724
+ "items": {
725
+ "type": "string"
726
+ }
727
+ }
728
+ }
729
+ },
730
+ "required": true
731
+ },
732
+ "responses": {
733
+ "200": {
734
+ "description": "Salary imported successfully",
735
+ "content": {
736
+ "application/json": {
737
+ "schema": {
738
+ "type": "array",
739
+ "items": {
740
+ "$ref": "#/components/schemas/employeeImport"
741
+ }
742
+ }
743
+ }
744
+ },
745
+ "x-ms-summary": "Success"
746
+ },
747
+ "401": {
748
+ "description": "Unauthorized access",
749
+ "x-ms-summary": "Unauthorized"
750
+ },
751
+ "409": {
752
+ "description": "Conflict occurred while importing salary",
753
+ "x-ms-summary": "Conflict"
754
+ }
755
+ },
756
+ "security": [
757
+ {
758
+ "Implicit": [
759
+ "api://03e636b8-8502-46e4-a641-04e58b2f0795/user_impersonation"
760
+ ]
761
+ }
762
+ ]
763
+ }
764
+ },
765
+ "/v1.0/vouchers/me": {
766
+ "get": {
767
+ "tags": [
768
+ "Vouchers"
769
+ ],
770
+ "summary": "Gets my vouchers",
771
+ "description": "Retrieves the vouchers of the current user for the current year.",
772
+ "operationId": "GetMyVouchers",
773
+ "parameters": [
774
+ {
775
+ "name": "from",
776
+ "in": "query",
777
+ "description": "",
778
+ "required": true,
779
+ "schema": {
780
+ "type": "string",
781
+ "format": "date-time"
782
+ },
783
+ "x-ms-summary": "Date from"
784
+ },
785
+ {
786
+ "name": "to",
787
+ "in": "query",
788
+ "description": "",
789
+ "required": true,
790
+ "schema": {
791
+ "type": "string",
792
+ "format": "date-time"
793
+ },
794
+ "x-ms-summary": "Date to"
795
+ }
796
+ ],
797
+ "responses": {
798
+ "200": {
799
+ "description": "Vouchers retrieved",
800
+ "content": {
801
+ "application/json": {
802
+ "schema": {
803
+ "type": "array",
804
+ "items": {
805
+ "$ref": "#/components/schemas/accountTransaction"
806
+ }
807
+ }
808
+ }
809
+ },
810
+ "x-ms-summary": "Success"
811
+ }
812
+ },
813
+ "security": [
814
+ {
815
+ "Implicit": [
816
+ "api://03e636b8-8502-46e4-a641-04e58b2f0795/user_impersonation"
817
+ ]
818
+ }
819
+ ]
820
+ }
821
+ },
822
+ "/v1.0/vouchers/gadgets/me": {
823
+ "get": {
824
+ "tags": [
825
+ "Vouchers"
826
+ ],
827
+ "summary": "Gets my gadget vouchers",
828
+ "description": "Retrieves the gadget vouchers of the current user for the current year.",
829
+ "operationId": "GetMyGadgetBudgetVouchers",
830
+ "parameters": [
831
+ {
832
+ "name": "from",
833
+ "in": "query",
834
+ "description": "",
835
+ "required": true,
836
+ "schema": {
837
+ "type": "string",
838
+ "format": "date-time"
839
+ },
840
+ "x-ms-summary": "Date from"
841
+ },
842
+ {
843
+ "name": "to",
844
+ "in": "query",
845
+ "description": "",
846
+ "required": true,
847
+ "schema": {
848
+ "type": "string",
849
+ "format": "date-time"
850
+ },
851
+ "x-ms-summary": "Date to"
852
+ }
853
+ ],
854
+ "responses": {
855
+ "200": {
856
+ "description": "Vouchers retrieved",
857
+ "content": {
858
+ "application/json": {
859
+ "schema": {
860
+ "type": "array",
861
+ "items": {
862
+ "$ref": "#/components/schemas/accountTransaction"
863
+ }
864
+ }
865
+ }
866
+ },
867
+ "x-ms-summary": "Success"
868
+ }
869
+ },
870
+ "security": [
871
+ {
872
+ "Implicit": [
873
+ "api://03e636b8-8502-46e4-a641-04e58b2f0795/user_impersonation"
874
+ ]
875
+ }
876
+ ]
877
+ }
878
+ },
879
+ "/v1.0/vouchers": {
880
+ "get": {
881
+ "tags": [
882
+ "Vouchers"
883
+ ],
884
+ "summary": "Gets all vouchers",
885
+ "description": "Retrieves the vouchers of all users for the current year.",
886
+ "operationId": "GetAllVouchers",
887
+ "parameters": [
888
+ {
889
+ "name": "from",
890
+ "in": "query",
891
+ "description": "",
892
+ "required": true,
893
+ "schema": {
894
+ "type": "string",
895
+ "format": "date-time"
896
+ },
897
+ "x-ms-summary": "Date from"
898
+ },
899
+ {
900
+ "name": "to",
901
+ "in": "query",
902
+ "description": "",
903
+ "required": true,
904
+ "schema": {
905
+ "type": "string",
906
+ "format": "date-time"
907
+ },
908
+ "x-ms-summary": "Date to"
909
+ }
910
+ ],
911
+ "responses": {
912
+ "200": {
913
+ "description": "Vouchers retrieved",
914
+ "content": {
915
+ "application/json": {
916
+ "schema": {
917
+ "type": "array",
918
+ "items": {
919
+ "$ref": "#/components/schemas/employeeVouchers"
920
+ }
921
+ }
922
+ }
923
+ },
924
+ "x-ms-summary": "Success"
925
+ },
926
+ "401": {
927
+ "description": "Unauthorized access",
928
+ "x-ms-summary": "Unauthorized"
929
+ }
930
+ },
931
+ "security": [
932
+ {
933
+ "Implicit": [
934
+ "api://03e636b8-8502-46e4-a641-04e58b2f0795/user_impersonation"
935
+ ]
936
+ }
937
+ ]
938
+ }
939
+ },
940
+ "/v1.0/vouchers/gadgets": {
941
+ "get": {
942
+ "tags": [
943
+ "Vouchers"
944
+ ],
945
+ "summary": "Gets all gadget vouchers",
946
+ "description": "Retrieves the gadget vouchers of all users for the current year.",
947
+ "operationId": "GetAllGadgetsVouchers",
948
+ "parameters": [
949
+ {
950
+ "name": "from",
951
+ "in": "query",
952
+ "description": "",
953
+ "required": true,
954
+ "schema": {
955
+ "type": "string",
956
+ "format": "date-time"
957
+ },
958
+ "x-ms-summary": "Date from"
959
+ },
960
+ {
961
+ "name": "to",
962
+ "in": "query",
963
+ "description": "",
964
+ "required": true,
965
+ "schema": {
966
+ "type": "string",
967
+ "format": "date-time"
968
+ },
969
+ "x-ms-summary": "Date to"
970
+ }
971
+ ],
972
+ "responses": {
973
+ "200": {
974
+ "description": "Vouchers retrieved",
975
+ "content": {
976
+ "application/json": {
977
+ "schema": {
978
+ "type": "array",
979
+ "items": {
980
+ "$ref": "#/components/schemas/employeeVouchers"
981
+ }
982
+ }
983
+ }
984
+ },
985
+ "x-ms-summary": "Success"
986
+ },
987
+ "401": {
988
+ "description": "Unauthorized access",
989
+ "x-ms-summary": "Unauthorized"
990
+ }
991
+ },
992
+ "security": [
993
+ {
994
+ "Implicit": [
995
+ "api://03e636b8-8502-46e4-a641-04e58b2f0795/user_impersonation"
996
+ ]
997
+ }
998
+ ]
999
+ }
1000
+ },
1001
+ "/v1.0/transactions": {
1002
+ "get": {
1003
+ "tags": [
1004
+ "AccountTransactions"
1005
+ ],
1006
+ "summary": "Gets all account transactions",
1007
+ "description": "Retrieves the account transactions between the specified dates.",
1008
+ "operationId": "GetAllAccountTransactions",
1009
+ "parameters": [
1010
+ {
1011
+ "name": "from",
1012
+ "in": "query",
1013
+ "description": "",
1014
+ "required": true,
1015
+ "schema": {
1016
+ "type": "string",
1017
+ "format": "date-time"
1018
+ },
1019
+ "x-ms-summary": "Date from"
1020
+ },
1021
+ {
1022
+ "name": "to",
1023
+ "in": "query",
1024
+ "description": "",
1025
+ "required": true,
1026
+ "schema": {
1027
+ "type": "string",
1028
+ "format": "date-time"
1029
+ },
1030
+ "x-ms-summary": "Date to"
1031
+ },
1032
+ {
1033
+ "name": "includeBeginningBalance",
1034
+ "in": "query",
1035
+ "description": "",
1036
+ "schema": {
1037
+ "type": "boolean"
1038
+ },
1039
+ "x-ms-summary": "Date to"
1040
+ }
1041
+ ],
1042
+ "responses": {
1043
+ "200": {
1044
+ "description": "Account transactions retrieved",
1045
+ "content": {
1046
+ "application/json": {
1047
+ "schema": {
1048
+ "type": "array",
1049
+ "items": {
1050
+ "$ref": "#/components/schemas/accountTransactionDto"
1051
+ }
1052
+ }
1053
+ }
1054
+ },
1055
+ "x-ms-summary": "Success"
1056
+ },
1057
+ "401": {
1058
+ "description": "Unauthorized access",
1059
+ "x-ms-summary": "Unauthorized"
1060
+ }
1061
+ },
1062
+ "security": [
1063
+ {
1064
+ "Implicit": [
1065
+ "api://03e636b8-8502-46e4-a641-04e58b2f0795/user_impersonation"
1066
+ ]
1067
+ }
1068
+ ]
1069
+ }
1070
+ }
1071
+ },
1072
+ "components": {
1073
+ "schemas": {
1074
+ "accountTransaction": {
1075
+ "type": "object",
1076
+ "properties": {
1077
+ "id": {
1078
+ "type": "integer",
1079
+ "format": "int64"
1080
+ },
1081
+ "accountCode": {
1082
+ "type": "integer",
1083
+ "format": "int64"
1084
+ },
1085
+ "date": {
1086
+ "type": "string",
1087
+ "format": "date-time"
1088
+ },
1089
+ "voucherNo": {
1090
+ "type": "integer",
1091
+ "format": "int64"
1092
+ },
1093
+ "importedVoucherNo": {
1094
+ "type": "integer",
1095
+ "format": "int64",
1096
+ "nullable": true
1097
+ },
1098
+ "voucherType": {
1099
+ "enum": [
1100
+ 0,
1101
+ 1,
1102
+ 2,
1103
+ 4,
1104
+ 5,
1105
+ 8,
1106
+ 9,
1107
+ 10,
1108
+ 11,
1109
+ 14,
1110
+ 15,
1111
+ 16,
1112
+ 17,
1113
+ 18,
1114
+ 19,
1115
+ 20,
1116
+ 23,
1117
+ 71,
1118
+ 72,
1119
+ 73,
1120
+ 74,
1121
+ 98,
1122
+ 99,
1123
+ 100,
1124
+ 101,
1125
+ 120,
1126
+ 130,
1127
+ 131,
1128
+ 99999
1129
+ ],
1130
+ "type": "integer",
1131
+ "format": "int32",
1132
+ "default": 0
1133
+ },
1134
+ "text": {
1135
+ "type": "string"
1136
+ },
1137
+ "description": {
1138
+ "type": "string"
1139
+ },
1140
+ "vatCode": {
1141
+ "type": "string"
1142
+ },
1143
+ "vatAmount": {
1144
+ "type": "number",
1145
+ "format": "double"
1146
+ },
1147
+ "vatRate": {
1148
+ "type": "number",
1149
+ "format": "double"
1150
+ },
1151
+ "vatReturnSpecification": {
1152
+ "enum": [
1153
+ 0,
1154
+ 1,
1155
+ 2,
1156
+ 3,
1157
+ 4,
1158
+ 5,
1159
+ 6
1160
+ ],
1161
+ "type": "integer",
1162
+ "format": "int32",
1163
+ "default": 0
1164
+ },
1165
+ "amount": {
1166
+ "type": "number",
1167
+ "format": "double"
1168
+ },
1169
+ "currencyCode": {
1170
+ "type": "string"
1171
+ },
1172
+ "currencyAmount": {
1173
+ "type": "number",
1174
+ "format": "double"
1175
+ },
1176
+ "projectCode": {
1177
+ "type": "string"
1178
+ },
1179
+ "productCode": {
1180
+ "type": "string"
1181
+ },
1182
+ "departmentCode": {
1183
+ "type": "string"
1184
+ },
1185
+ "dim1Code": {
1186
+ "type": "string"
1187
+ },
1188
+ "dim2Code": {
1189
+ "type": "string"
1190
+ },
1191
+ "dim3Code": {
1192
+ "type": "string"
1193
+ },
1194
+ "locationCode": {
1195
+ "type": "string"
1196
+ },
1197
+ "voucherImagesCount": {
1198
+ "type": "integer",
1199
+ "format": "int32"
1200
+ },
1201
+ "lastChanged": {
1202
+ "type": "string",
1203
+ "format": "date-time",
1204
+ "nullable": true
1205
+ },
1206
+ "createdDate": {
1207
+ "type": "string",
1208
+ "format": "date-time",
1209
+ "nullable": true
1210
+ },
1211
+ "customerAccountNo": {
1212
+ "type": "integer",
1213
+ "format": "int64",
1214
+ "nullable": true
1215
+ },
1216
+ "supplierAccountNo": {
1217
+ "type": "integer",
1218
+ "format": "int64",
1219
+ "nullable": true
1220
+ },
1221
+ "employeeAccountNo": {
1222
+ "type": "integer",
1223
+ "format": "int64",
1224
+ "nullable": true
1225
+ },
1226
+ "voucherDueDate": {
1227
+ "type": "string",
1228
+ "format": "date-time",
1229
+ "nullable": true
1230
+ },
1231
+ "voucherReference": {
1232
+ "type": "string"
1233
+ },
1234
+ "voucherCID": {
1235
+ "type": "string"
1236
+ },
1237
+ "voucherCreditNoteReference": {
1238
+ "type": "string"
1239
+ },
1240
+ "voucherId": {
1241
+ "type": "string",
1242
+ "format": "uuid"
1243
+ },
1244
+ "documentNo": {
1245
+ "type": "string"
1246
+ },
1247
+ "createdFromImportJournalId": {
1248
+ "type": "string",
1249
+ "format": "uuid",
1250
+ "nullable": true
1251
+ },
1252
+ "isCreatedFromEhf": {
1253
+ "type": "boolean"
1254
+ },
1255
+ "bankTransferId": {
1256
+ "type": "string",
1257
+ "format": "uuid",
1258
+ "nullable": true
1259
+ },
1260
+ "subLedgerEntryId": {
1261
+ "type": "integer",
1262
+ "format": "int64",
1263
+ "nullable": true
1264
+ },
1265
+ "externalImportReference": {
1266
+ "type": "string"
1267
+ },
1268
+ "hasVoucherDocumentation": {
1269
+ "type": "boolean"
1270
+ },
1271
+ "ourReferenceEmployeeCode": {
1272
+ "type": "integer",
1273
+ "format": "int64",
1274
+ "nullable": true
1275
+ },
1276
+ "customMatchingReference": {
1277
+ "type": "string"
1278
+ },
1279
+ "quantity": {
1280
+ "type": "number",
1281
+ "format": "double",
1282
+ "nullable": true
1283
+ },
1284
+ "quantity2": {
1285
+ "type": "number",
1286
+ "format": "double",
1287
+ "nullable": true
1288
+ },
1289
+ "voucherDate": {
1290
+ "type": "string",
1291
+ "format": "date-time",
1292
+ "nullable": true
1293
+ },
1294
+ "reversedVoucherNo": {
1295
+ "type": "integer",
1296
+ "format": "int64",
1297
+ "nullable": true
1298
+ },
1299
+ "correctionOfVoucherNo": {
1300
+ "type": "integer",
1301
+ "format": "int64",
1302
+ "nullable": true
1303
+ },
1304
+ "isReversed": {
1305
+ "type": "boolean"
1306
+ },
1307
+ "isNoteMainEntry": {
1308
+ "type": "boolean"
1309
+ },
1310
+ "agricultureDepartment": {
1311
+ "enum": [
1312
+ 0,
1313
+ 10,
1314
+ 20,
1315
+ 30,
1316
+ 50,
1317
+ 60,
1318
+ 90
1319
+ ],
1320
+ "type": "integer",
1321
+ "format": "int32",
1322
+ "default": 0,
1323
+ "nullable": true
1324
+ }
1325
+ }
1326
+ },
1327
+ "accountTransactionDto": {
1328
+ "required": [
1329
+ "id",
1330
+ "amount",
1331
+ "accountCode"
1332
+ ],
1333
+ "type": "object",
1334
+ "properties": {
1335
+ "id": {
1336
+ "type": "integer",
1337
+ "format": "int64"
1338
+ },
1339
+ "amount": {
1340
+ "type": "number",
1341
+ "format": "double"
1342
+ },
1343
+ "accountCode": {
1344
+ "type": "integer",
1345
+ "format": "int64"
1346
+ },
1347
+ "date": {
1348
+ "type": "string",
1349
+ "format": "date-time"
1350
+ }
1351
+ }
1352
+ },
1353
+ "address": {
1354
+ "type": "object",
1355
+ "properties": {
1356
+ "city": {
1357
+ "type": "string"
1358
+ },
1359
+ "zipCode": {
1360
+ "type": "string"
1361
+ },
1362
+ "address1": {
1363
+ "type": "string"
1364
+ },
1365
+ "address2": {
1366
+ "type": "string"
1367
+ },
1368
+ "address3": {
1369
+ "type": "string"
1370
+ },
1371
+ "countryCode": {
1372
+ "type": "string"
1373
+ },
1374
+ "lastChanged": {
1375
+ "type": "string",
1376
+ "format": "date-time"
1377
+ },
1378
+ "id": {
1379
+ "type": "integer",
1380
+ "format": "int64",
1381
+ "nullable": true
1382
+ },
1383
+ "isPrimary": {
1384
+ "type": "boolean"
1385
+ },
1386
+ "externalCode": {
1387
+ "type": "string"
1388
+ }
1389
+ }
1390
+ },
1391
+ "detailedSalaryLine": {
1392
+ "type": "object",
1393
+ "properties": {
1394
+ "activityCode": {
1395
+ "type": "string",
1396
+ "nullable": true
1397
+ },
1398
+ "activityName": {
1399
+ "type": "string",
1400
+ "nullable": true
1401
+ },
1402
+ "hours": {
1403
+ "type": "number",
1404
+ "format": "double",
1405
+ "nullable": true
1406
+ },
1407
+ "projects": {
1408
+ "type": "array",
1409
+ "items": {
1410
+ "$ref": "#/components/schemas/project"
1411
+ },
1412
+ "nullable": true
1413
+ },
1414
+ "salary": {
1415
+ "type": "number",
1416
+ "format": "double",
1417
+ "nullable": true
1418
+ },
1419
+ "holidayPay": {
1420
+ "type": "integer",
1421
+ "format": "int32",
1422
+ "nullable": true
1423
+ },
1424
+ "pension": {
1425
+ "$ref": "#/components/schemas/pension"
1426
+ },
1427
+ "employerTax": {
1428
+ "$ref": "#/components/schemas/employerTax"
1429
+ }
1430
+ }
1431
+ },
1432
+ "detailedSalaryWithSalaryLines": {
1433
+ "type": "object",
1434
+ "properties": {
1435
+ "salaryLines": {
1436
+ "type": "array",
1437
+ "items": {
1438
+ "$ref": "#/components/schemas/detailedSalaryLine"
1439
+ },
1440
+ "nullable": true
1441
+ },
1442
+ "salary": {
1443
+ "type": "integer",
1444
+ "format": "int32",
1445
+ "nullable": true
1446
+ },
1447
+ "status": {
1448
+ "type": "string",
1449
+ "nullable": true
1450
+ }
1451
+ }
1452
+ },
1453
+ "employee": {
1454
+ "type": "object",
1455
+ "properties": {
1456
+ "nationalityCountryCode": {
1457
+ "type": "string"
1458
+ },
1459
+ "jobTitle": {
1460
+ "type": "string"
1461
+ },
1462
+ "hiredDate": {
1463
+ "type": "string",
1464
+ "format": "date-time",
1465
+ "nullable": true
1466
+ },
1467
+ "startDate": {
1468
+ "type": "string",
1469
+ "format": "date-time",
1470
+ "nullable": true
1471
+ },
1472
+ "endDate": {
1473
+ "type": "string",
1474
+ "format": "date-time",
1475
+ "nullable": true
1476
+ },
1477
+ "departmentCode": {
1478
+ "type": "string"
1479
+ },
1480
+ "locationCode": {
1481
+ "type": "string"
1482
+ },
1483
+ "hourlyRate": {
1484
+ "type": "number",
1485
+ "format": "double",
1486
+ "nullable": true
1487
+ },
1488
+ "hourlyCost": {
1489
+ "type": "number",
1490
+ "format": "double",
1491
+ "nullable": true
1492
+ },
1493
+ "hourlyRates": {
1494
+ "type": "array",
1495
+ "items": {
1496
+ "$ref": "#/components/schemas/employeeTimeHourlyRates"
1497
+ }
1498
+ },
1499
+ "payrollBankAccountCode": {
1500
+ "type": "string"
1501
+ },
1502
+ "expenseBankAccountCode": {
1503
+ "type": "string"
1504
+ },
1505
+ "payrollEmailAddress": {
1506
+ "type": "string"
1507
+ },
1508
+ "employeeCreatedDate": {
1509
+ "type": "string",
1510
+ "format": "date-time"
1511
+ },
1512
+ "managerEmployeeCode": {
1513
+ "type": "integer",
1514
+ "format": "int64",
1515
+ "nullable": true
1516
+ },
1517
+ "gender": {
1518
+ "enum": [
1519
+ 0,
1520
+ 1,
1521
+ 2,
1522
+ -1
1523
+ ],
1524
+ "type": "integer",
1525
+ "format": "int32",
1526
+ "default": 0,
1527
+ "nullable": true
1528
+ },
1529
+ "id": {
1530
+ "type": "integer",
1531
+ "format": "int64",
1532
+ "nullable": true
1533
+ },
1534
+ "code": {
1535
+ "type": "integer",
1536
+ "format": "int64",
1537
+ "nullable": true
1538
+ },
1539
+ "externalCode": {
1540
+ "type": "integer",
1541
+ "format": "int64",
1542
+ "nullable": true
1543
+ },
1544
+ "mailAddress": {
1545
+ "$ref": "#/components/schemas/address"
1546
+ },
1547
+ "streetAddress": {
1548
+ "$ref": "#/components/schemas/address"
1549
+ },
1550
+ "streetAddresses": {
1551
+ "type": "array",
1552
+ "items": {
1553
+ "$ref": "#/components/schemas/address"
1554
+ }
1555
+ },
1556
+ "emailAddress": {
1557
+ "type": "string"
1558
+ },
1559
+ "phoneNumber": {
1560
+ "type": "string"
1561
+ },
1562
+ "isArchived": {
1563
+ "type": "boolean",
1564
+ "nullable": true
1565
+ },
1566
+ "lastChanged": {
1567
+ "type": "string",
1568
+ "format": "date-time"
1569
+ },
1570
+ "createdDate": {
1571
+ "type": "string",
1572
+ "format": "date-time"
1573
+ },
1574
+ "contactGroups": {
1575
+ "type": "array",
1576
+ "items": {
1577
+ "type": "string"
1578
+ }
1579
+ },
1580
+ "createdFromImportJournalId": {
1581
+ "type": "string",
1582
+ "format": "uuid",
1583
+ "nullable": true
1584
+ },
1585
+ "firstName": {
1586
+ "type": "string"
1587
+ },
1588
+ "lastName": {
1589
+ "type": "string"
1590
+ },
1591
+ "dateOfBirth": {
1592
+ "type": "string",
1593
+ "format": "date-time",
1594
+ "nullable": true
1595
+ },
1596
+ "socialSecurityNumber": {
1597
+ "type": "string"
1598
+ },
1599
+ "subledgerNumberSeriesId": {
1600
+ "type": "string",
1601
+ "format": "uuid",
1602
+ "nullable": true
1603
+ },
1604
+ "reportInternationalId": {
1605
+ "type": "boolean",
1606
+ "nullable": true
1607
+ },
1608
+ "internationalIdCountryCode": {
1609
+ "type": "string"
1610
+ },
1611
+ "internationalIdType": {
1612
+ "enum": [
1613
+ 0,
1614
+ 1,
1615
+ 2,
1616
+ 3,
1617
+ 4
1618
+ ],
1619
+ "type": "integer",
1620
+ "format": "int32",
1621
+ "default": 0,
1622
+ "nullable": true
1623
+ },
1624
+ "internationalIdNumber": {
1625
+ "type": "string"
1626
+ },
1627
+ "externalImportReference": {
1628
+ "type": "string"
1629
+ }
1630
+ }
1631
+ },
1632
+ "employeeDetailedSalary": {
1633
+ "type": "object",
1634
+ "properties": {
1635
+ "name": {
1636
+ "type": "string"
1637
+ },
1638
+ "email": {
1639
+ "type": "string"
1640
+ },
1641
+ "salaryLines": {
1642
+ "type": "array",
1643
+ "items": {
1644
+ "$ref": "#/components/schemas/detailedSalaryLine"
1645
+ },
1646
+ "nullable": true
1647
+ },
1648
+ "salary": {
1649
+ "type": "integer",
1650
+ "format": "int32",
1651
+ "nullable": true
1652
+ },
1653
+ "status": {
1654
+ "type": "string",
1655
+ "nullable": true
1656
+ }
1657
+ }
1658
+ },
1659
+ "employeeEstimatedSalary": {
1660
+ "type": "object",
1661
+ "properties": {
1662
+ "name": {
1663
+ "type": "string",
1664
+ "nullable": true
1665
+ },
1666
+ "email": {
1667
+ "type": "string",
1668
+ "nullable": true
1669
+ },
1670
+ "hours": {
1671
+ "type": "number",
1672
+ "format": "double",
1673
+ "nullable": true
1674
+ },
1675
+ "hourlyRate": {
1676
+ "type": "integer",
1677
+ "format": "int32",
1678
+ "nullable": true
1679
+ },
1680
+ "commission": {
1681
+ "type": "number",
1682
+ "format": "float",
1683
+ "nullable": true
1684
+ },
1685
+ "activityCode": {
1686
+ "type": "string",
1687
+ "nullable": true
1688
+ },
1689
+ "activityName": {
1690
+ "type": "string",
1691
+ "nullable": true
1692
+ },
1693
+ "projects": {
1694
+ "type": "array",
1695
+ "items": {
1696
+ "$ref": "#/components/schemas/project"
1697
+ },
1698
+ "nullable": true
1699
+ },
1700
+ "salary": {
1701
+ "type": "number",
1702
+ "format": "double",
1703
+ "nullable": true
1704
+ },
1705
+ "holidayPay": {
1706
+ "type": "integer",
1707
+ "format": "int32",
1708
+ "nullable": true
1709
+ },
1710
+ "pension": {
1711
+ "$ref": "#/components/schemas/pension"
1712
+ },
1713
+ "employerTax": {
1714
+ "$ref": "#/components/schemas/employerTax"
1715
+ }
1716
+ }
1717
+ },
1718
+ "employeeHoursLastMonth": {
1719
+ "type": "object",
1720
+ "properties": {
1721
+ "name": {
1722
+ "type": "string"
1723
+ },
1724
+ "email": {
1725
+ "type": "string"
1726
+ },
1727
+ "hoursLastMonth": {
1728
+ "type": "array",
1729
+ "items": {
1730
+ "$ref": "#/components/schemas/timeTransaction"
1731
+ }
1732
+ }
1733
+ }
1734
+ },
1735
+ "employeeImport": {
1736
+ "type": "object",
1737
+ "properties": {
1738
+ "name": {
1739
+ "type": "string"
1740
+ },
1741
+ "email": {
1742
+ "type": "string"
1743
+ },
1744
+ "input": {
1745
+ "type": "array",
1746
+ "items": {
1747
+ "$ref": "#/components/schemas/detailedSalaryLine"
1748
+ }
1749
+ },
1750
+ "output": {
1751
+ "type": "array",
1752
+ "items": {
1753
+ "$ref": "#/components/schemas/salaryLine"
1754
+ }
1755
+ }
1756
+ }
1757
+ },
1758
+ "employeeProjects": {
1759
+ "type": "object",
1760
+ "properties": {
1761
+ "name": {
1762
+ "type": "string"
1763
+ },
1764
+ "email": {
1765
+ "type": "string"
1766
+ },
1767
+ "projects": {
1768
+ "type": "array",
1769
+ "items": {
1770
+ "$ref": "#/components/schemas/project"
1771
+ }
1772
+ }
1773
+ }
1774
+ },
1775
+ "employeeTimeHourlyRates": {
1776
+ "type": "object",
1777
+ "properties": {
1778
+ "id": {
1779
+ "type": "integer",
1780
+ "format": "int64",
1781
+ "nullable": true
1782
+ },
1783
+ "validFrom": {
1784
+ "type": "string",
1785
+ "format": "date-time"
1786
+ },
1787
+ "validTo": {
1788
+ "type": "string",
1789
+ "format": "date-time"
1790
+ },
1791
+ "hourlyRate": {
1792
+ "type": "number",
1793
+ "format": "double",
1794
+ "nullable": true
1795
+ },
1796
+ "hourlyCost": {
1797
+ "type": "number",
1798
+ "format": "double",
1799
+ "nullable": true
1800
+ },
1801
+ "isDeleted": {
1802
+ "type": "boolean",
1803
+ "nullable": true
1804
+ }
1805
+ }
1806
+ },
1807
+ "employeeTimeTransactionSummary": {
1808
+ "type": "object",
1809
+ "properties": {
1810
+ "name": {
1811
+ "type": "string",
1812
+ "nullable": true
1813
+ },
1814
+ "email": {
1815
+ "type": "string",
1816
+ "nullable": true
1817
+ },
1818
+ "timeTransactions": {
1819
+ "type": "array",
1820
+ "items": {
1821
+ "$ref": "#/components/schemas/timeTransactionSummary"
1822
+ }
1823
+ }
1824
+ }
1825
+ },
1826
+ "employeeVouchers": {
1827
+ "type": "object",
1828
+ "properties": {
1829
+ "name": {
1830
+ "type": "string",
1831
+ "nullable": true
1832
+ },
1833
+ "email": {
1834
+ "type": "string",
1835
+ "nullable": true
1836
+ },
1837
+ "vouchers": {
1838
+ "type": "array",
1839
+ "items": {
1840
+ "$ref": "#/components/schemas/accountTransaction"
1841
+ }
1842
+ }
1843
+ }
1844
+ },
1845
+ "employerTax": {
1846
+ "type": "object",
1847
+ "properties": {
1848
+ "underLimit": {
1849
+ "type": "integer",
1850
+ "format": "int32"
1851
+ },
1852
+ "aboveLimit": {
1853
+ "type": "integer",
1854
+ "format": "int32"
1855
+ },
1856
+ "pension": {
1857
+ "type": "integer",
1858
+ "format": "int32"
1859
+ },
1860
+ "holidayPay": {
1861
+ "type": "integer",
1862
+ "format": "int32",
1863
+ "nullable": true
1864
+ },
1865
+ "total": {
1866
+ "type": "integer",
1867
+ "format": "int32"
1868
+ }
1869
+ },
1870
+ "nullable": true
1871
+ },
1872
+ "estimatedSalary": {
1873
+ "type": "object",
1874
+ "properties": {
1875
+ "hours": {
1876
+ "type": "number",
1877
+ "format": "double",
1878
+ "nullable": true
1879
+ },
1880
+ "hourlyRate": {
1881
+ "type": "integer",
1882
+ "format": "int32",
1883
+ "nullable": true
1884
+ },
1885
+ "commission": {
1886
+ "type": "number",
1887
+ "format": "float",
1888
+ "nullable": true
1889
+ },
1890
+ "activityCode": {
1891
+ "type": "string",
1892
+ "nullable": true
1893
+ },
1894
+ "activityName": {
1895
+ "type": "string",
1896
+ "nullable": true
1897
+ },
1898
+ "projects": {
1899
+ "type": "array",
1900
+ "items": {
1901
+ "$ref": "#/components/schemas/project"
1902
+ },
1903
+ "nullable": true
1904
+ },
1905
+ "salary": {
1906
+ "type": "number",
1907
+ "format": "double",
1908
+ "nullable": true
1909
+ },
1910
+ "holidayPay": {
1911
+ "type": "integer",
1912
+ "format": "int32",
1913
+ "nullable": true
1914
+ },
1915
+ "pension": {
1916
+ "$ref": "#/components/schemas/pension"
1917
+ },
1918
+ "employerTax": {
1919
+ "$ref": "#/components/schemas/employerTax"
1920
+ }
1921
+ }
1922
+ },
1923
+ "payItem": {
1924
+ "type": "object",
1925
+ "properties": {
1926
+ "code": {
1927
+ "type": "string"
1928
+ },
1929
+ "name": {
1930
+ "type": "string"
1931
+ },
1932
+ "isActive": {
1933
+ "type": "boolean"
1934
+ },
1935
+ "benefit": {
1936
+ "type": "string"
1937
+ },
1938
+ "description": {
1939
+ "type": "string"
1940
+ },
1941
+ "processingType": {
1942
+ "enum": [
1943
+ 0,
1944
+ 5,
1945
+ 6,
1946
+ 10,
1947
+ 11,
1948
+ 12,
1949
+ 13,
1950
+ 14,
1951
+ 20,
1952
+ 30,
1953
+ 40,
1954
+ 50,
1955
+ 51,
1956
+ 52,
1957
+ 55,
1958
+ 56,
1959
+ 57,
1960
+ 58,
1961
+ 60,
1962
+ 80,
1963
+ 90,
1964
+ 100,
1965
+ 101,
1966
+ 102,
1967
+ 103,
1968
+ 104,
1969
+ 110,
1970
+ 120,
1971
+ 130,
1972
+ 140,
1973
+ 141,
1974
+ 142,
1975
+ 143,
1976
+ 144,
1977
+ 801,
1978
+ 900,
1979
+ 999,
1980
+ 1000,
1981
+ 1010,
1982
+ 1015,
1983
+ 1020,
1984
+ 1030,
1985
+ 1040,
1986
+ 1050,
1987
+ 2000
1988
+ ],
1989
+ "type": "integer",
1990
+ "format": "int32",
1991
+ "default": 0
1992
+ },
1993
+ "id": {
1994
+ "type": "string",
1995
+ "format": "uuid"
1996
+ }
1997
+ }
1998
+ },
1999
+ "pension": {
2000
+ "type": "object",
2001
+ "properties": {
2002
+ "under12G": {
2003
+ "type": "integer",
2004
+ "format": "int32"
2005
+ },
2006
+ "above7G": {
2007
+ "type": "integer",
2008
+ "format": "int32"
2009
+ },
2010
+ "total": {
2011
+ "type": "integer",
2012
+ "format": "int32"
2013
+ }
2014
+ },
2015
+ "nullable": true
2016
+ },
2017
+ "project": {
2018
+ "type": "object",
2019
+ "properties": {
2020
+ "projectCode": {
2021
+ "type": "string",
2022
+ "nullable": true
2023
+ },
2024
+ "projectName": {
2025
+ "type": "string",
2026
+ "nullable": true
2027
+ },
2028
+ "hours": {
2029
+ "type": "number",
2030
+ "format": "double",
2031
+ "nullable": true
2032
+ },
2033
+ "commission": {
2034
+ "type": "number",
2035
+ "format": "double",
2036
+ "nullable": true
2037
+ },
2038
+ "hourlyRate": {
2039
+ "type": "integer",
2040
+ "format": "int32",
2041
+ "nullable": true
2042
+ },
2043
+ "startDate": {
2044
+ "type": "string",
2045
+ "format": "date-time",
2046
+ "nullable": true
2047
+ },
2048
+ "endDate": {
2049
+ "type": "string",
2050
+ "format": "date-time",
2051
+ "nullable": true
2052
+ },
2053
+ "active": {
2054
+ "type": "boolean",
2055
+ "nullable": true
2056
+ }
2057
+ }
2058
+ },
2059
+ "salaryLine": {
2060
+ "type": "object",
2061
+ "properties": {
2062
+ "id": {
2063
+ "type": "integer",
2064
+ "format": "int64",
2065
+ "nullable": true
2066
+ },
2067
+ "employeeCode": {
2068
+ "type": "integer",
2069
+ "format": "int64",
2070
+ "nullable": true
2071
+ },
2072
+ "payItemCode": {
2073
+ "type": "string"
2074
+ },
2075
+ "quantity": {
2076
+ "type": "number",
2077
+ "format": "double",
2078
+ "nullable": true
2079
+ },
2080
+ "rate": {
2081
+ "type": "number",
2082
+ "format": "double",
2083
+ "nullable": true
2084
+ },
2085
+ "amount": {
2086
+ "type": "number",
2087
+ "format": "double",
2088
+ "nullable": true
2089
+ },
2090
+ "projectCode": {
2091
+ "type": "string"
2092
+ },
2093
+ "departmentCode": {
2094
+ "type": "string"
2095
+ },
2096
+ "account": {
2097
+ "type": "integer",
2098
+ "format": "int64",
2099
+ "nullable": true
2100
+ },
2101
+ "oppositeAccount": {
2102
+ "type": "integer",
2103
+ "format": "int64",
2104
+ "nullable": true
2105
+ },
2106
+ "comment": {
2107
+ "type": "string"
2108
+ },
2109
+ "isLocked": {
2110
+ "type": "boolean"
2111
+ },
2112
+ "isDeletedByUser": {
2113
+ "type": "boolean"
2114
+ },
2115
+ "vatCode": {
2116
+ "type": "string"
2117
+ },
2118
+ "carRegistrationNo": {
2119
+ "type": "string"
2120
+ },
2121
+ "externalImportReference": {
2122
+ "type": "string"
2123
+ },
2124
+ "accountAgricultureDepartment": {
2125
+ "enum": [
2126
+ 0,
2127
+ 10,
2128
+ 20,
2129
+ 30,
2130
+ 50,
2131
+ 60,
2132
+ 90
2133
+ ],
2134
+ "type": "integer",
2135
+ "format": "int32",
2136
+ "default": 0,
2137
+ "nullable": true
2138
+ },
2139
+ "oppositeAccountAgricultureDepartment": {
2140
+ "enum": [
2141
+ 0,
2142
+ 10,
2143
+ 20,
2144
+ 30,
2145
+ 50,
2146
+ 60,
2147
+ 90
2148
+ ],
2149
+ "type": "integer",
2150
+ "format": "int32",
2151
+ "default": 0,
2152
+ "nullable": true
2153
+ }
2154
+ }
2155
+ },
2156
+ "timeTransaction": {
2157
+ "type": "object",
2158
+ "properties": {
2159
+ "id": {
2160
+ "type": "integer",
2161
+ "format": "int64"
2162
+ },
2163
+ "date": {
2164
+ "type": "string",
2165
+ "format": "date-time",
2166
+ "nullable": true
2167
+ },
2168
+ "customerCode": {
2169
+ "type": "integer",
2170
+ "format": "int64",
2171
+ "nullable": true
2172
+ },
2173
+ "customerName": {
2174
+ "type": "string"
2175
+ },
2176
+ "projectCode": {
2177
+ "type": "string"
2178
+ },
2179
+ "projectName": {
2180
+ "type": "string"
2181
+ },
2182
+ "subProjectCode": {
2183
+ "type": "string"
2184
+ },
2185
+ "subProjectName": {
2186
+ "type": "string"
2187
+ },
2188
+ "projectDepartmentName": {
2189
+ "type": "string"
2190
+ },
2191
+ "projectCategoryName": {
2192
+ "type": "string"
2193
+ },
2194
+ "projectBillingMethod": {
2195
+ "enum": [
2196
+ 0,
2197
+ 1,
2198
+ 2,
2199
+ 3
2200
+ ],
2201
+ "type": "integer",
2202
+ "format": "int32",
2203
+ "default": 0,
2204
+ "nullable": true
2205
+ },
2206
+ "departmentCode": {
2207
+ "type": "string"
2208
+ },
2209
+ "departmentName": {
2210
+ "type": "string"
2211
+ },
2212
+ "activityCode": {
2213
+ "type": "string"
2214
+ },
2215
+ "activityName": {
2216
+ "type": "string"
2217
+ },
2218
+ "employeeCode": {
2219
+ "type": "integer",
2220
+ "format": "int64",
2221
+ "nullable": true
2222
+ },
2223
+ "employeeName": {
2224
+ "type": "string"
2225
+ },
2226
+ "timeSpecificationName": {
2227
+ "type": "string"
2228
+ },
2229
+ "comment": {
2230
+ "type": "string"
2231
+ },
2232
+ "internalComment": {
2233
+ "type": "string"
2234
+ },
2235
+ "time": {
2236
+ "type": "string"
2237
+ },
2238
+ "hours": {
2239
+ "type": "number",
2240
+ "format": "double",
2241
+ "nullable": true
2242
+ },
2243
+ "breakDurationHours": {
2244
+ "type": "number",
2245
+ "format": "double"
2246
+ },
2247
+ "hourlyRate": {
2248
+ "type": "number",
2249
+ "format": "double",
2250
+ "nullable": true
2251
+ },
2252
+ "billableHours": {
2253
+ "type": "number",
2254
+ "format": "double",
2255
+ "nullable": true
2256
+ },
2257
+ "billableAmount": {
2258
+ "type": "number",
2259
+ "format": "double",
2260
+ "nullable": true
2261
+ },
2262
+ "approvalStatus": {
2263
+ "enum": [
2264
+ 0,
2265
+ 1,
2266
+ 2,
2267
+ 3
2268
+ ],
2269
+ "type": "integer",
2270
+ "format": "int32",
2271
+ "default": 0,
2272
+ "nullable": true
2273
+ },
2274
+ "invoiceNo": {
2275
+ "type": "integer",
2276
+ "format": "int64",
2277
+ "nullable": true
2278
+ },
2279
+ "orderNo": {
2280
+ "type": "integer",
2281
+ "format": "int64",
2282
+ "nullable": true
2283
+ },
2284
+ "statusFlags": {
2285
+ "type": "integer",
2286
+ "format": "int32"
2287
+ },
2288
+ "costRate": {
2289
+ "type": "number",
2290
+ "format": "double",
2291
+ "nullable": true
2292
+ },
2293
+ "costPrice": {
2294
+ "type": "number",
2295
+ "format": "double",
2296
+ "nullable": true
2297
+ },
2298
+ "margin": {
2299
+ "type": "number",
2300
+ "format": "double",
2301
+ "nullable": true
2302
+ },
2303
+ "marginPercent": {
2304
+ "type": "number",
2305
+ "format": "double",
2306
+ "nullable": true
2307
+ },
2308
+ "payrollNo": {
2309
+ "type": "integer",
2310
+ "format": "int64",
2311
+ "nullable": true
2312
+ },
2313
+ "payrollDescription": {
2314
+ "type": "string"
2315
+ },
2316
+ "isAccrued": {
2317
+ "type": "boolean"
2318
+ },
2319
+ "accrualVoucherNo": {
2320
+ "type": "integer",
2321
+ "format": "int64",
2322
+ "nullable": true
2323
+ },
2324
+ "isInvoicedExternally": {
2325
+ "type": "boolean"
2326
+ },
2327
+ "isInvoicedExternallyBy": {
2328
+ "type": "string"
2329
+ }
2330
+ }
2331
+ },
2332
+ "timeTransactionSummary": {
2333
+ "type": "object",
2334
+ "properties": {
2335
+ "activityCode": {
2336
+ "type": "string"
2337
+ },
2338
+ "activityName": {
2339
+ "type": "string"
2340
+ },
2341
+ "projectCode": {
2342
+ "type": "string",
2343
+ "nullable": true
2344
+ },
2345
+ "projectName": {
2346
+ "type": "string",
2347
+ "nullable": true
2348
+ },
2349
+ "hours": {
2350
+ "type": "number",
2351
+ "format": "double",
2352
+ "nullable": true
2353
+ },
2354
+ "hourlyRate": {
2355
+ "type": "integer",
2356
+ "format": "int32",
2357
+ "nullable": true
2358
+ },
2359
+ "commission": {
2360
+ "type": "number",
2361
+ "format": "float",
2362
+ "nullable": true
2363
+ }
2364
+ }
2365
+ }
2366
+ },
2367
+ "securitySchemes": {
2368
+ "Implicit": {
2369
+ "type": "oauth2",
2370
+ "flows": {
2371
+ "implicit": {
2372
+ "authorizationUrl": "https://login.microsoftonline.com/a8533784-aa3c-403b-a61a-1533ecc6e3ed/oauth2/v2.0/authorize",
2373
+ "tokenUrl": "https://login.microsoftonline.com/a8533784-aa3c-403b-a61a-1533ecc6e3ed/oauth2/v2.0/token",
2374
+ "refreshUrl": "https://login.microsoftonline.com/a8533784-aa3c-403b-a61a-1533ecc6e3ed/oauth2/v2.0/token",
2375
+ "scopes": {
2376
+ "api://03e636b8-8502-46e4-a641-04e58b2f0795/user_impersonation": "Default function scope"
2377
+ }
2378
+ }
2379
+ }
2380
+ }
2381
+ }
2382
+ }
2383
+ }