@teamleader/focus-api-specification 1.32.0 → 1.33.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -3,7 +3,7 @@ info:
3
3
  title: Teamleader API
4
4
  description: This is the documentation of the Teamleader Focus API. If you have any feedback, or are you missing functionality to support your use case? Let us know via [api@teamleader.eu](mailto:api@teamleader.eu).
5
5
  contact: {}
6
- version: 1.32.0
6
+ version: 1.33.0
7
7
  servers:
8
8
  - url: https://api.focus.teamleader.eu
9
9
  variables: {}
@@ -328,6 +328,15 @@ tags:
328
328
  - name: accounts
329
329
  description: Accounts
330
330
  x-displayName: Accounts
331
+ - name: plannable_items
332
+ description: Plannable items
333
+ x-displayName: Plannable items
334
+ - name: reservations
335
+ description: Reservations
336
+ x-displayName: Reservations
337
+ - name: user_availability
338
+ description: User availability
339
+ x-displayName: User availability
331
340
  paths:
332
341
  /departments.list:
333
342
  post:
@@ -15939,6 +15948,448 @@ paths:
15939
15948
  status: projects-v2
15940
15949
  will_be_automatically_switched_on: '2024-12-31'
15941
15950
  deprecated: false
15951
+ /plannableItems.list:
15952
+ post:
15953
+ tags:
15954
+ - plannable_items
15955
+ summary: plannableItems.list
15956
+ description: Lists all plannable items that match the optional filters provided.
15957
+ operationId: plannableItems.list
15958
+ parameters: []
15959
+ requestBody:
15960
+ description: ''
15961
+ content:
15962
+ application/json:
15963
+ schema:
15964
+ allOf:
15965
+ - $ref: '#/components/schemas/plannableItems.listrequest'
15966
+ - example:
15967
+ filter:
15968
+ ids:
15969
+ - 018d79a1-2b99-7fbd-b323-500b01305371
15970
+ example:
15971
+ filter:
15972
+ ids:
15973
+ - 018d79a1-2b99-7fbd-b323-500b01305371
15974
+ required: true
15975
+ responses:
15976
+ '200':
15977
+ description: ''
15978
+ headers: {}
15979
+ content:
15980
+ application/json:
15981
+ schema:
15982
+ allOf:
15983
+ - $ref: '#/components/schemas/plannableItems.listresponse'
15984
+ - example:
15985
+ data:
15986
+ - id: 018d79a1-2b99-7fbd-b323-500b01305371
15987
+ source:
15988
+ type: task
15989
+ id: 948b8ca5-58aa-0844-ba34-cee255aa9694
15990
+ total_duration:
15991
+ value: 600
15992
+ currency: minutes
15993
+ planned_duration:
15994
+ value: 600
15995
+ currency: minutes
15996
+ unplanned_duration:
15997
+ value: 0
15998
+ currency: minutes
15999
+ example:
16000
+ data:
16001
+ - id: 018d79a1-2b99-7fbd-b323-500b01305371
16002
+ source:
16003
+ type: task
16004
+ id: 948b8ca5-58aa-0844-ba34-cee255aa9694
16005
+ total_duration:
16006
+ value: 600
16007
+ currency: minutes
16008
+ planned_duration:
16009
+ value: 600
16010
+ currency: minutes
16011
+ unplanned_duration:
16012
+ value: 0
16013
+ currency: minutes
16014
+ deprecated: false
16015
+ /plannableItems.info:
16016
+ post:
16017
+ tags:
16018
+ - plannable_items
16019
+ summary: plannableItems.info
16020
+ description: Returns the info for a single plannable item, either by ID or source if the ID is unknown.
16021
+ operationId: plannableItems.info
16022
+ parameters: []
16023
+ requestBody:
16024
+ description: ''
16025
+ content:
16026
+ application/json:
16027
+ schema:
16028
+ allOf:
16029
+ - $ref: '#/components/schemas/plannableItems.inforequest'
16030
+ - example:
16031
+ id: 018d79a1-2b99-7fbd-b323-500b01305371
16032
+ example:
16033
+ id: 018d79a1-2b99-7fbd-b323-500b01305371
16034
+ required: true
16035
+ responses:
16036
+ '200':
16037
+ description: ''
16038
+ headers: {}
16039
+ content:
16040
+ application/json:
16041
+ schema:
16042
+ allOf:
16043
+ - $ref: '#/components/schemas/plannableItems.inforesponse'
16044
+ - example:
16045
+ data:
16046
+ id: 018d79a1-2b99-7fbd-b323-500b01305371
16047
+ source:
16048
+ type: task
16049
+ id: 948b8ca5-58aa-0844-ba34-cee255aa9694
16050
+ total_duration:
16051
+ value: 600
16052
+ currency: minutes
16053
+ planned_duration:
16054
+ value: 600
16055
+ currency: minutes
16056
+ unplanned_duration:
16057
+ value: 0
16058
+ currency: minutes
16059
+ example:
16060
+ data:
16061
+ id: 018d79a1-2b99-7fbd-b323-500b01305371
16062
+ source:
16063
+ type: task
16064
+ id: 948b8ca5-58aa-0844-ba34-cee255aa9694
16065
+ total_duration:
16066
+ value: 600
16067
+ currency: minutes
16068
+ planned_duration:
16069
+ value: 600
16070
+ currency: minutes
16071
+ unplanned_duration:
16072
+ value: 0
16073
+ currency: minutes
16074
+ deprecated: false
16075
+ /reservations.list:
16076
+ post:
16077
+ tags:
16078
+ - reservations
16079
+ summary: reservations.list
16080
+ description: Lists all reservations that match the optional filters provided.
16081
+ operationId: reservations.list
16082
+ parameters: []
16083
+ requestBody:
16084
+ description: ''
16085
+ content:
16086
+ application/json:
16087
+ schema:
16088
+ allOf:
16089
+ - $ref: '#/components/schemas/reservations.listrequest'
16090
+ - example:
16091
+ plannable_item_ids:
16092
+ - 46156648-87c6-478d-8aa7-1dc3a00dacab
16093
+ example:
16094
+ plannable_item_ids:
16095
+ - 46156648-87c6-478d-8aa7-1dc3a00dacab
16096
+ required: true
16097
+ responses:
16098
+ '200':
16099
+ description: ''
16100
+ headers: {}
16101
+ content:
16102
+ application/json:
16103
+ schema:
16104
+ allOf:
16105
+ - $ref: '#/components/schemas/reservations.listresponse'
16106
+ - example:
16107
+ data:
16108
+ - id: 018d79a1-2b99-7fbd-b323-500b01305371
16109
+ plannable_item:
16110
+ type: plannableItem
16111
+ id: 46156648-87c6-478d-8aa7-1dc3a00dacab
16112
+ date: '2024-01-02'
16113
+ duration:
16114
+ value: 60
16115
+ currency: minutes
16116
+ assignee: null
16117
+ origin: null
16118
+ source:
16119
+ type: task
16120
+ id: 948b8ca5-58aa-0844-ba34-cee255aa9694
16121
+ example:
16122
+ data:
16123
+ - id: 018d79a1-2b99-7fbd-b323-500b01305371
16124
+ plannable_item:
16125
+ type: plannableItem
16126
+ id: 46156648-87c6-478d-8aa7-1dc3a00dacab
16127
+ date: '2024-01-02'
16128
+ duration:
16129
+ value: 60
16130
+ currency: minutes
16131
+ assignee: null
16132
+ origin: null
16133
+ source:
16134
+ type: task
16135
+ id: 948b8ca5-58aa-0844-ba34-cee255aa9694
16136
+ deprecated: false
16137
+ /reservations.create:
16138
+ post:
16139
+ tags:
16140
+ - reservations
16141
+ summary: reservations.create
16142
+ description: Create a new reservation.
16143
+ operationId: reservations.create
16144
+ parameters: []
16145
+ requestBody:
16146
+ description: ''
16147
+ content:
16148
+ application/json:
16149
+ schema:
16150
+ allOf:
16151
+ - $ref: '#/components/schemas/reservations.createrequest'
16152
+ - example:
16153
+ plannable_item_id: 46156648-87c6-478d-8aa7-1dc3a00dacab
16154
+ date: '2024-01-12'
16155
+ duration:
16156
+ value: 60
16157
+ unit: minutes
16158
+ assignee:
16159
+ type: user
16160
+ id: b38ebb9b-6e46-4bf4-a1e2-af747d6b64ae
16161
+ example:
16162
+ plannable_item_id: 46156648-87c6-478d-8aa7-1dc3a00dacab
16163
+ date: '2024-01-12'
16164
+ duration:
16165
+ value: 60
16166
+ unit: minutes
16167
+ assignee:
16168
+ type: user
16169
+ id: b38ebb9b-6e46-4bf4-a1e2-af747d6b64ae
16170
+ required: true
16171
+ responses:
16172
+ '201':
16173
+ description: ''
16174
+ headers: {}
16175
+ content:
16176
+ application/json:
16177
+ schema:
16178
+ allOf:
16179
+ - $ref: '#/components/schemas/reservations.createresponse'
16180
+ - example:
16181
+ data:
16182
+ type: reservation
16183
+ id: 019a3012-c800-7109-ae63-0ab5bcd3b484
16184
+ example:
16185
+ data:
16186
+ type: reservation
16187
+ id: 019a3012-c800-7109-ae63-0ab5bcd3b484
16188
+ deprecated: false
16189
+ /reservations.update:
16190
+ post:
16191
+ tags:
16192
+ - reservations
16193
+ summary: reservations.update
16194
+ description: Update an existing reservation.
16195
+ operationId: reservations.update
16196
+ parameters: []
16197
+ requestBody:
16198
+ description: ''
16199
+ content:
16200
+ application/json:
16201
+ schema:
16202
+ allOf:
16203
+ - $ref: '#/components/schemas/reservations.updaterequest'
16204
+ - example:
16205
+ id: 019a3012-c800-7109-ae63-0ab5bcd3b484
16206
+ date: '2024-01-01'
16207
+ duration:
16208
+ value: 120
16209
+ unit: minutes
16210
+ example:
16211
+ id: 019a3012-c800-7109-ae63-0ab5bcd3b484
16212
+ date: '2024-01-01'
16213
+ duration:
16214
+ value: 120
16215
+ unit: minutes
16216
+ required: true
16217
+ responses:
16218
+ '204':
16219
+ description: ''
16220
+ headers: {}
16221
+ content: {}
16222
+ deprecated: false
16223
+ /reservations.delete:
16224
+ post:
16225
+ tags:
16226
+ - reservations
16227
+ summary: reservations.delete
16228
+ description: Delete a reservation.
16229
+ operationId: reservations.delete
16230
+ parameters: []
16231
+ requestBody:
16232
+ description: ''
16233
+ content:
16234
+ application/json:
16235
+ schema:
16236
+ allOf:
16237
+ - $ref: '#/components/schemas/reservations.deleterequest'
16238
+ - example:
16239
+ id: 019a3012-c800-7109-ae63-0ab5bcd3b484
16240
+ example:
16241
+ id: 019a3012-c800-7109-ae63-0ab5bcd3b484
16242
+ required: true
16243
+ responses:
16244
+ '204':
16245
+ description: ''
16246
+ headers: {}
16247
+ content: {}
16248
+ deprecated: false
16249
+ /userAvailability.total:
16250
+ post:
16251
+ tags:
16252
+ - user_availability
16253
+ summary: userAvailability.total
16254
+ description: Returns the total availability for all users.
16255
+ operationId: userAvailability.total
16256
+ parameters: []
16257
+ requestBody:
16258
+ description: ''
16259
+ content:
16260
+ application/json:
16261
+ schema:
16262
+ allOf:
16263
+ - $ref: '#/components/schemas/userAvailability.totalrequest'
16264
+ - example:
16265
+ period:
16266
+ start_date: '2024-01-01'
16267
+ end_date: '2024-01-07'
16268
+ example:
16269
+ period:
16270
+ start_date: '2024-01-01'
16271
+ end_date: '2024-01-07'
16272
+ required: true
16273
+ responses:
16274
+ '200':
16275
+ description: ''
16276
+ headers: {}
16277
+ content:
16278
+ application/json:
16279
+ schema:
16280
+ allOf:
16281
+ - $ref: '#/components/schemas/userAvailability.totalresponse'
16282
+ - example:
16283
+ data:
16284
+ - user:
16285
+ type: user
16286
+ id: 1c00aeaa-0a47-0ce5-8f2b-60935c241f12
16287
+ availability:
16288
+ gross_time_available:
16289
+ value: 480
16290
+ unit: minutes
16291
+ net_time_available:
16292
+ value: 480
16293
+ unit: minutes
16294
+ planned_time:
16295
+ value: 60
16296
+ unit: minutes
16297
+ unplanned_time:
16298
+ value: 420
16299
+ unit: minutes
16300
+ example:
16301
+ data:
16302
+ - user:
16303
+ type: user
16304
+ id: 1c00aeaa-0a47-0ce5-8f2b-60935c241f12
16305
+ availability:
16306
+ gross_time_available:
16307
+ value: 480
16308
+ unit: minutes
16309
+ net_time_available:
16310
+ value: 480
16311
+ unit: minutes
16312
+ planned_time:
16313
+ value: 60
16314
+ unit: minutes
16315
+ unplanned_time:
16316
+ value: 420
16317
+ unit: minutes
16318
+ deprecated: false
16319
+ /userAvailability.daily:
16320
+ post:
16321
+ tags:
16322
+ - user_availability
16323
+ summary: userAvailability.daily
16324
+ description: Returns the daily availability for all users.
16325
+ operationId: userAvailability.daily
16326
+ parameters: []
16327
+ requestBody:
16328
+ description: ''
16329
+ content:
16330
+ application/json:
16331
+ schema:
16332
+ allOf:
16333
+ - $ref: '#/components/schemas/userAvailability.dailyrequest'
16334
+ - example:
16335
+ period:
16336
+ start_date: '2024-01-01'
16337
+ end_date: '2024-01-01'
16338
+ example:
16339
+ period:
16340
+ start_date: '2024-01-01'
16341
+ end_date: '2024-01-01'
16342
+ required: true
16343
+ responses:
16344
+ '200':
16345
+ description: ''
16346
+ headers: {}
16347
+ content:
16348
+ application/json:
16349
+ schema:
16350
+ allOf:
16351
+ - $ref: '#/components/schemas/userAvailability.dailyresponse'
16352
+ - example:
16353
+ data:
16354
+ - user:
16355
+ type: user
16356
+ id: 1c00aeaa-0a47-0ce5-8f2b-60935c241f12
16357
+ availabilities:
16358
+ - date: '2024-01-01'
16359
+ availability:
16360
+ gross_time_available:
16361
+ value: 480
16362
+ unit: minutes
16363
+ net_time_available:
16364
+ value: 480
16365
+ unit: minutes
16366
+ planned_time:
16367
+ value: 60
16368
+ unit: minutes
16369
+ unplanned_time:
16370
+ value: 420
16371
+ unit: minutes
16372
+ example:
16373
+ data:
16374
+ - user:
16375
+ type: user
16376
+ id: 1c00aeaa-0a47-0ce5-8f2b-60935c241f12
16377
+ availabilities:
16378
+ - date: '2024-01-01'
16379
+ availability:
16380
+ gross_time_available:
16381
+ value: 480
16382
+ unit: minutes
16383
+ net_time_available:
16384
+ value: 480
16385
+ unit: minutes
16386
+ planned_time:
16387
+ value: 60
16388
+ unit: minutes
16389
+ unplanned_time:
16390
+ value: 420
16391
+ unit: minutes
16392
+ deprecated: false
15942
16393
  components:
15943
16394
  securitySchemes:
15944
16395
  httpBearer:
@@ -30026,35 +30477,519 @@ components:
30026
30477
  type: string
30027
30478
  description: Date when the account will be automatically switched to `projects-v2` version (optional).
30028
30479
  example: '2024-12-31'
30029
- x-tagGroups:
30030
- - name: General
30031
- tags:
30032
- - departments
30033
- - users
30034
- - teams
30035
- - custom_fields
30036
- - work_types
30037
- - document_templates
30038
- - currencies
30039
- - notes
30040
- - email_tracking
30041
- - closing_days
30042
- - day_off_types
30043
- - days_off
30044
- - name: CRM
30045
- tags:
30046
- - contacts
30047
- - companies
30048
- - business_types
30049
- - tags
30050
- - addresses
30051
- - name: Deals
30052
- tags:
30053
- - deals
30054
- - deal_pipelines
30055
- - deal_phases
30056
- - deal_sources
30057
- - quotations
30480
+ plannableItems.listrequest:
30481
+ title: plannableItems.listrequest
30482
+ type: object
30483
+ properties:
30484
+ filter:
30485
+ type: object
30486
+ properties:
30487
+ ids:
30488
+ type: array
30489
+ items:
30490
+ type: string
30491
+ status:
30492
+ type: array
30493
+ items:
30494
+ type: string
30495
+ enum:
30496
+ - active
30497
+ - deactivated
30498
+ example: active
30499
+ term:
30500
+ type: string
30501
+ example: Set-up
30502
+ start_date:
30503
+ type: string
30504
+ example: '2023-10-02'
30505
+ end_date:
30506
+ type: string
30507
+ example: '2023-10-06'
30508
+ project_ids:
30509
+ type: array
30510
+ items:
30511
+ type: string
30512
+ assignees:
30513
+ type: array
30514
+ description: To fetch unassigned plannable items, provide `null` instead of the type/id object
30515
+ items:
30516
+ allOf:
30517
+ - $ref: '#/components/schemas/Assignee'
30518
+ - type: object
30519
+ required:
30520
+ - type
30521
+ - id
30522
+ properties:
30523
+ type:
30524
+ type: string
30525
+ enum:
30526
+ - team
30527
+ - user
30528
+ example: user
30529
+ work_type_ids:
30530
+ type: array
30531
+ items:
30532
+ type: string
30533
+ completion_statuses:
30534
+ type: array
30535
+ items:
30536
+ type: string
30537
+ enum:
30538
+ - to_do
30539
+ - done
30540
+ example: to_do
30541
+ planned_time_statuses:
30542
+ type: array
30543
+ items:
30544
+ type: string
30545
+ enum:
30546
+ - unplanned
30547
+ - partially_planned
30548
+ - fully_planned
30549
+ - overbooked
30550
+ example: unplanned
30551
+ page:
30552
+ $ref: '#/components/schemas/Page'
30553
+ sort:
30554
+ type: array
30555
+ items:
30556
+ allOf:
30557
+ - $ref: '#/components/schemas/Sort'
30558
+ - properties:
30559
+ field:
30560
+ type: string
30561
+ enum:
30562
+ - id
30563
+ - end_date
30564
+ - total_duration
30565
+ default: id
30566
+ order:
30567
+ default: asc
30568
+ DurationInMinutesFull:
30569
+ title: DurationInMinutesFull
30570
+ type: object
30571
+ properties:
30572
+ unit:
30573
+ type: string
30574
+ enum:
30575
+ - minutes
30576
+ example: minutes
30577
+ value:
30578
+ type: number
30579
+ example: 60
30580
+ plannableItems.listresponse:
30581
+ title: plannableItems.listresponse
30582
+ type: object
30583
+ properties:
30584
+ data:
30585
+ type: array
30586
+ items:
30587
+ type: object
30588
+ properties:
30589
+ id:
30590
+ type: string
30591
+ example: 018d55af-d0d7-76be-8185-ee970a7f3826
30592
+ source:
30593
+ allOf:
30594
+ - $ref: '#/components/schemas/TypeAndId'
30595
+ - properties:
30596
+ type:
30597
+ type: string
30598
+ example: task
30599
+ total_duration:
30600
+ allOf:
30601
+ - $ref: '#/components/schemas/DurationInMinutesFull'
30602
+ planned_duration:
30603
+ allOf:
30604
+ - $ref: '#/components/schemas/DurationInMinutesFull'
30605
+ unplanned_duration:
30606
+ allOf:
30607
+ - $ref: '#/components/schemas/DurationInMinutesFull'
30608
+ plannableItems.inforequest:
30609
+ title: plannableItems.inforequest
30610
+ type: object
30611
+ properties:
30612
+ id:
30613
+ type: string
30614
+ example: 018d79a1-2b99-7fbd-b323-500b01305371
30615
+ source:
30616
+ allOf:
30617
+ - $ref: '#/components/schemas/TypeAndId'
30618
+ - properties:
30619
+ type:
30620
+ type: string
30621
+ example: task
30622
+ plannableItems.inforesponse:
30623
+ title: plannableItems.inforesponse
30624
+ type: object
30625
+ properties:
30626
+ data:
30627
+ type: object
30628
+ properties:
30629
+ id:
30630
+ type: string
30631
+ example: 018d55af-d0d7-76be-8185-ee970a7f3826
30632
+ source:
30633
+ allOf:
30634
+ - $ref: '#/components/schemas/TypeAndId'
30635
+ - properties:
30636
+ type:
30637
+ type: string
30638
+ example: task
30639
+ total_duration:
30640
+ allOf:
30641
+ - $ref: '#/components/schemas/DurationInMinutesFull'
30642
+ planned_duration:
30643
+ allOf:
30644
+ - $ref: '#/components/schemas/DurationInMinutesFull'
30645
+ unplanned_duration:
30646
+ allOf:
30647
+ - $ref: '#/components/schemas/DurationInMinutesFull'
30648
+ SourceType:
30649
+ title: SourceType
30650
+ enum:
30651
+ - call
30652
+ - closingDay
30653
+ - dayOffType
30654
+ - externalEvent
30655
+ - meeting
30656
+ - task
30657
+ type: string
30658
+ reservations.listrequest:
30659
+ title: reservations.listrequest
30660
+ type: object
30661
+ properties:
30662
+ filter:
30663
+ type: object
30664
+ properties:
30665
+ plannable_item_ids:
30666
+ type: array
30667
+ items:
30668
+ type: string
30669
+ start_date:
30670
+ type: string
30671
+ example: '2024-01-11'
30672
+ end_date:
30673
+ type: string
30674
+ example: '2024-01-12'
30675
+ assignees:
30676
+ type: array
30677
+ description: To fetch unassigned reservations, provide `null` instead of the type/id object
30678
+ items:
30679
+ allOf:
30680
+ - $ref: '#/components/schemas/Assignee'
30681
+ - type: object
30682
+ required:
30683
+ - type
30684
+ - id
30685
+ properties:
30686
+ type:
30687
+ type: string
30688
+ enum:
30689
+ - team
30690
+ - user
30691
+ example: user
30692
+ sources:
30693
+ type: array
30694
+ items:
30695
+ allOf:
30696
+ - $ref: '#/components/schemas/TypeAndId'
30697
+ - properties:
30698
+ type:
30699
+ $ref: '#/components/schemas/SourceType'
30700
+ source_types:
30701
+ type: array
30702
+ items:
30703
+ $ref: '#/components/schemas/SourceType'
30704
+ page:
30705
+ $ref: '#/components/schemas/Page'
30706
+ reservations.listresponse:
30707
+ title: reservations.listresponse
30708
+ type: object
30709
+ properties:
30710
+ data:
30711
+ type: array
30712
+ items:
30713
+ type: object
30714
+ properties:
30715
+ id:
30716
+ type: string
30717
+ example: 39c64ba9-ebf1-491a-8486-a0b96ff21c07
30718
+ plannable_item:
30719
+ allOf:
30720
+ - $ref: '#/components/schemas/TypeAndId'
30721
+ - properties:
30722
+ type:
30723
+ type: string
30724
+ example: plannableItem
30725
+ date:
30726
+ type: string
30727
+ example: '2024-01-11'
30728
+ duration:
30729
+ allOf:
30730
+ - $ref: '#/components/schemas/DurationInMinutesFull'
30731
+ assignee:
30732
+ allOf:
30733
+ - $ref: '#/components/schemas/Assignee'
30734
+ - type: object
30735
+ required:
30736
+ - type
30737
+ - id
30738
+ properties:
30739
+ type:
30740
+ type: string
30741
+ enum:
30742
+ - team
30743
+ - user
30744
+ example: user
30745
+ origin:
30746
+ allOf:
30747
+ - $ref: '#/components/schemas/TypeAndId'
30748
+ - properties:
30749
+ type:
30750
+ type: string
30751
+ example: dayOff
30752
+ reservations.createrequest:
30753
+ title: reservations.createrequest
30754
+ type: object
30755
+ required:
30756
+ - plannable_item_id
30757
+ - date
30758
+ - duration
30759
+ - assignee
30760
+ properties:
30761
+ plannable_item_id:
30762
+ type: string
30763
+ example: e82cec33-24c9-4d13-96cb-d515a1660c8d
30764
+ date:
30765
+ type: string
30766
+ example: '2024-01-12'
30767
+ duration:
30768
+ allOf:
30769
+ - $ref: '#/components/schemas/DurationInMinutesFull'
30770
+ assignee:
30771
+ allOf:
30772
+ - $ref: '#/components/schemas/Assignee'
30773
+ - type: object
30774
+ required:
30775
+ - type
30776
+ - id
30777
+ properties:
30778
+ type:
30779
+ type: string
30780
+ enum:
30781
+ - team
30782
+ - user
30783
+ example: user
30784
+ reservations.createresponse:
30785
+ title: reservations.createresponse
30786
+ type: object
30787
+ properties:
30788
+ data:
30789
+ $ref: '#/components/schemas/TypeAndId'
30790
+ reservations.updaterequest:
30791
+ title: reservations.updaterequest
30792
+ type: object
30793
+ required:
30794
+ - id
30795
+ properties:
30796
+ id:
30797
+ type: string
30798
+ example: 01878019-c72c-70dc-b097-7e519c775e35
30799
+ date:
30800
+ type: string
30801
+ example: '2024-01-12'
30802
+ duration:
30803
+ allOf:
30804
+ - $ref: '#/components/schemas/DurationInMinutesFull'
30805
+ assignee:
30806
+ allOf:
30807
+ - $ref: '#/components/schemas/Assignee'
30808
+ - type: object
30809
+ required:
30810
+ - type
30811
+ - id
30812
+ properties:
30813
+ type:
30814
+ type: string
30815
+ enum:
30816
+ - team
30817
+ - user
30818
+ example: user
30819
+ reservations.deleterequest:
30820
+ title: reservations.deleterequest
30821
+ type: object
30822
+ required:
30823
+ - id
30824
+ properties:
30825
+ id:
30826
+ type: string
30827
+ example: 01878019-c72c-70dc-b097-7e519c775e35
30828
+ Period:
30829
+ title: Period
30830
+ type: object
30831
+ properties:
30832
+ start_date:
30833
+ type: string
30834
+ default: '2023-10-02'
30835
+ end_date:
30836
+ type: string
30837
+ default: '2023-10-06'
30838
+ userAvailability.totalrequest:
30839
+ title: userAvailability.totalrequest
30840
+ type: object
30841
+ required:
30842
+ - period
30843
+ properties:
30844
+ period:
30845
+ allOf:
30846
+ - $ref: '#/components/schemas/Period'
30847
+ - description: A maximum duration of 20.000 days can be passed
30848
+ filter:
30849
+ type: object
30850
+ properties:
30851
+ assignees:
30852
+ type: array
30853
+ items:
30854
+ allOf:
30855
+ - $ref: '#/components/schemas/Assignee'
30856
+ - type: object
30857
+ required:
30858
+ - type
30859
+ - id
30860
+ properties:
30861
+ type:
30862
+ type: string
30863
+ enum:
30864
+ - team
30865
+ - user
30866
+ example: user
30867
+ page:
30868
+ $ref: '#/components/schemas/Page'
30869
+ UserAvailability:
30870
+ title: UserAvailability
30871
+ type: object
30872
+ properties:
30873
+ gross_time_available:
30874
+ description: Total available time based on working hours
30875
+ allOf:
30876
+ - $ref: '#/components/schemas/DurationInMinutesFull'
30877
+ net_time_available:
30878
+ description: Gross time available minus days off
30879
+ allOf:
30880
+ - $ref: '#/components/schemas/DurationInMinutesFull'
30881
+ planned_time:
30882
+ allOf:
30883
+ - $ref: '#/components/schemas/DurationInMinutesFull'
30884
+ unplanned_time:
30885
+ allOf:
30886
+ - $ref: '#/components/schemas/DurationInMinutesFull'
30887
+ userAvailability.totalresponse:
30888
+ title: userAvailability.totalresponse
30889
+ type: object
30890
+ properties:
30891
+ data:
30892
+ type: array
30893
+ items:
30894
+ type: object
30895
+ properties:
30896
+ user:
30897
+ allOf:
30898
+ - $ref: '#/components/schemas/TypeAndId'
30899
+ - properties:
30900
+ type:
30901
+ type: string
30902
+ example: user
30903
+ availability:
30904
+ allOf:
30905
+ - $ref: '#/components/schemas/UserAvailability'
30906
+ userAvailability.dailyrequest:
30907
+ title: userAvailability.dailyrequest
30908
+ type: object
30909
+ required:
30910
+ - period
30911
+ properties:
30912
+ period:
30913
+ allOf:
30914
+ - $ref: '#/components/schemas/Period'
30915
+ - description: A maximum duration of 100 days can be passed
30916
+ filter:
30917
+ type: object
30918
+ properties:
30919
+ assignees:
30920
+ type: array
30921
+ items:
30922
+ allOf:
30923
+ - $ref: '#/components/schemas/Assignee'
30924
+ - type: object
30925
+ required:
30926
+ - type
30927
+ - id
30928
+ properties:
30929
+ type:
30930
+ type: string
30931
+ enum:
30932
+ - team
30933
+ - user
30934
+ example: user
30935
+ page:
30936
+ $ref: '#/components/schemas/Page'
30937
+ userAvailability.dailyresponse:
30938
+ title: userAvailability.dailyresponse
30939
+ type: object
30940
+ properties:
30941
+ data:
30942
+ type: array
30943
+ items:
30944
+ type: object
30945
+ properties:
30946
+ user:
30947
+ allOf:
30948
+ - $ref: '#/components/schemas/TypeAndId'
30949
+ - properties:
30950
+ type:
30951
+ type: string
30952
+ example: user
30953
+ availabilities:
30954
+ type: array
30955
+ items:
30956
+ type: object
30957
+ properties:
30958
+ date:
30959
+ type: string
30960
+ example: '2023-10-02'
30961
+ availability:
30962
+ allOf:
30963
+ - $ref: '#/components/schemas/UserAvailability'
30964
+ x-tagGroups:
30965
+ - name: General
30966
+ tags:
30967
+ - departments
30968
+ - users
30969
+ - teams
30970
+ - custom_fields
30971
+ - work_types
30972
+ - document_templates
30973
+ - currencies
30974
+ - notes
30975
+ - email_tracking
30976
+ - closing_days
30977
+ - day_off_types
30978
+ - days_off
30979
+ - name: CRM
30980
+ tags:
30981
+ - contacts
30982
+ - companies
30983
+ - business_types
30984
+ - tags
30985
+ - addresses
30986
+ - name: Deals
30987
+ tags:
30988
+ - deals
30989
+ - deal_pipelines
30990
+ - deal_phases
30991
+ - deal_sources
30992
+ - quotations
30058
30993
  - orders
30059
30994
  - name: Calendar
30060
30995
  tags:
@@ -30098,6 +31033,11 @@ x-tagGroups:
30098
31033
  - groups
30099
31034
  - projects_v2_tasks
30100
31035
  - materials
31036
+ - name: Planning
31037
+ tags:
31038
+ - plannable_items
31039
+ - reservations
31040
+ - user_availability
30101
31041
  - name: Tasks
30102
31042
  tags:
30103
31043
  - tasks