@shuffl/api-contracts 0.5.0 → 0.5.2

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/openapi.json CHANGED
@@ -35413,6 +35413,9 @@
35413
35413
  {
35414
35414
  "const": "groups.setAutomationState"
35415
35415
  },
35416
+ {
35417
+ "const": "groups.setPlaybookAutoStart"
35418
+ },
35416
35419
  {
35417
35420
  "const": "groups.suggestions"
35418
35421
  },
@@ -35722,6 +35725,9 @@
35722
35725
  {
35723
35726
  "const": "playbooks.mine"
35724
35727
  },
35728
+ {
35729
+ "const": "playbooks.nudge"
35730
+ },
35725
35731
  {
35726
35732
  "const": "playbooks.person"
35727
35733
  },
@@ -37141,6 +37147,9 @@
37141
37147
  {
37142
37148
  "const": "groups.setAutomationState"
37143
37149
  },
37150
+ {
37151
+ "const": "groups.setPlaybookAutoStart"
37152
+ },
37144
37153
  {
37145
37154
  "const": "groups.suggestions"
37146
37155
  },
@@ -37450,6 +37459,9 @@
37450
37459
  {
37451
37460
  "const": "playbooks.mine"
37452
37461
  },
37462
+ {
37463
+ "const": "playbooks.nudge"
37464
+ },
37453
37465
  {
37454
37466
  "const": "playbooks.person"
37455
37467
  },
@@ -38444,6 +38456,9 @@
38444
38456
  {
38445
38457
  "const": "groups.setAutomationState"
38446
38458
  },
38459
+ {
38460
+ "const": "groups.setPlaybookAutoStart"
38461
+ },
38447
38462
  {
38448
38463
  "const": "groups.suggestions"
38449
38464
  },
@@ -38753,6 +38768,9 @@
38753
38768
  {
38754
38769
  "const": "playbooks.mine"
38755
38770
  },
38771
+ {
38772
+ "const": "playbooks.nudge"
38773
+ },
38756
38774
  {
38757
38775
  "const": "playbooks.person"
38758
38776
  },
@@ -48765,6 +48783,16 @@
48765
48783
  }
48766
48784
  ]
48767
48785
  },
48786
+ "autoStartPaused": {
48787
+ "anyOf": [
48788
+ {
48789
+ "const": false
48790
+ },
48791
+ {
48792
+ "const": true
48793
+ }
48794
+ ]
48795
+ },
48768
48796
  "buddy": {
48769
48797
  "anyOf": [
48770
48798
  {
@@ -54193,7 +54221,7 @@
54193
54221
  "/manage/groups/allAutomations": {
54194
54222
  "post": {
54195
54223
  "operationId": "groups.allAutomations",
54196
- "summary": "Every group automation in the workspace with its group and last runs, or only those that start one playbook, program or community",
54224
+ "summary": "Every join and leave rule in the workspace: group automations with their group and last runs, playbooks that start on each start date and Connections programs whose people are a group; or only those that start one playbook, program or community",
54197
54225
  "requestBody": {
54198
54226
  "required": true,
54199
54227
  "content": {
@@ -54447,6 +54475,189 @@
54447
54475
  "additionalProperties": false
54448
54476
  }
54449
54477
  },
54478
+ "playbookStarts": {
54479
+ "type": "array",
54480
+ "items": {
54481
+ "type": "object",
54482
+ "properties": {
54483
+ "group": {
54484
+ "anyOf": [
54485
+ {
54486
+ "type": "null"
54487
+ },
54488
+ {
54489
+ "type": "object",
54490
+ "properties": {
54491
+ "id": {
54492
+ "type": "string"
54493
+ },
54494
+ "kind": {
54495
+ "anyOf": [
54496
+ {
54497
+ "const": "dynamic"
54498
+ },
54499
+ {
54500
+ "const": "list"
54501
+ }
54502
+ ]
54503
+ },
54504
+ "members": {
54505
+ "type": "number"
54506
+ },
54507
+ "name": {
54508
+ "type": "string"
54509
+ }
54510
+ },
54511
+ "required": [
54512
+ "id",
54513
+ "kind",
54514
+ "members",
54515
+ "name"
54516
+ ],
54517
+ "additionalProperties": false
54518
+ }
54519
+ ]
54520
+ },
54521
+ "lastRunAt": {
54522
+ "anyOf": [
54523
+ {
54524
+ "type": "null"
54525
+ },
54526
+ {
54527
+ "type": "string",
54528
+ "format": "date-time"
54529
+ }
54530
+ ]
54531
+ },
54532
+ "playbook": {
54533
+ "type": "object",
54534
+ "properties": {
54535
+ "id": {
54536
+ "type": "string"
54537
+ },
54538
+ "name": {
54539
+ "type": "string"
54540
+ },
54541
+ "status": {
54542
+ "anyOf": [
54543
+ {
54544
+ "const": "active"
54545
+ },
54546
+ {
54547
+ "const": "archived"
54548
+ },
54549
+ {
54550
+ "const": "paused"
54551
+ }
54552
+ ]
54553
+ }
54554
+ },
54555
+ "required": [
54556
+ "id",
54557
+ "name",
54558
+ "status"
54559
+ ],
54560
+ "additionalProperties": false
54561
+ },
54562
+ "runs": {
54563
+ "type": "number"
54564
+ },
54565
+ "runs30": {
54566
+ "type": "number"
54567
+ },
54568
+ "state": {
54569
+ "anyOf": [
54570
+ {
54571
+ "const": "active"
54572
+ },
54573
+ {
54574
+ "const": "paused"
54575
+ }
54576
+ ]
54577
+ }
54578
+ },
54579
+ "required": [
54580
+ "group",
54581
+ "lastRunAt",
54582
+ "playbook",
54583
+ "runs",
54584
+ "runs30",
54585
+ "state"
54586
+ ],
54587
+ "additionalProperties": false
54588
+ }
54589
+ },
54590
+ "programRosters": {
54591
+ "type": "array",
54592
+ "items": {
54593
+ "type": "object",
54594
+ "properties": {
54595
+ "group": {
54596
+ "type": "object",
54597
+ "properties": {
54598
+ "id": {
54599
+ "type": "string"
54600
+ },
54601
+ "kind": {
54602
+ "anyOf": [
54603
+ {
54604
+ "const": "dynamic"
54605
+ },
54606
+ {
54607
+ "const": "list"
54608
+ }
54609
+ ]
54610
+ },
54611
+ "members": {
54612
+ "type": "number"
54613
+ },
54614
+ "name": {
54615
+ "type": "string"
54616
+ }
54617
+ },
54618
+ "required": [
54619
+ "id",
54620
+ "kind",
54621
+ "members",
54622
+ "name"
54623
+ ],
54624
+ "additionalProperties": false
54625
+ },
54626
+ "program": {
54627
+ "type": "object",
54628
+ "properties": {
54629
+ "id": {
54630
+ "type": "string"
54631
+ },
54632
+ "name": {
54633
+ "type": "string"
54634
+ }
54635
+ },
54636
+ "required": [
54637
+ "id",
54638
+ "name"
54639
+ ],
54640
+ "additionalProperties": false
54641
+ },
54642
+ "state": {
54643
+ "anyOf": [
54644
+ {
54645
+ "const": "active"
54646
+ },
54647
+ {
54648
+ "const": "paused"
54649
+ }
54650
+ ]
54651
+ }
54652
+ },
54653
+ "required": [
54654
+ "group",
54655
+ "program",
54656
+ "state"
54657
+ ],
54658
+ "additionalProperties": false
54659
+ }
54660
+ },
54450
54661
  "runs": {
54451
54662
  "type": "array",
54452
54663
  "items": {
@@ -54609,6 +54820,8 @@
54609
54820
  },
54610
54821
  "required": [
54611
54822
  "automations",
54823
+ "playbookStarts",
54824
+ "programRosters",
54612
54825
  "runs",
54613
54826
  "totals"
54614
54827
  ],
@@ -69134,16 +69347,58 @@
69134
69347
  "x-shuffl-permission": "groups.setAutomationState"
69135
69348
  }
69136
69349
  },
69137
- "/manage/groups/suggestions": {
69350
+ "/manage/groups/setPlaybookAutoStart": {
69138
69351
  "post": {
69139
- "operationId": "groups.suggestions",
69140
- "summary": "Starter groups not made yet, with how many people each would hold",
69352
+ "operationId": "groups.setPlaybookAutoStart",
69353
+ "summary": "Turn on, pause or remove a playbook’s rule that starts it on each new hire’s start date, for everyone or one group",
69141
69354
  "requestBody": {
69142
69355
  "required": true,
69143
69356
  "content": {
69144
69357
  "application/json": {
69145
69358
  "schema": {
69146
69359
  "type": "object",
69360
+ "properties": {
69361
+ "groupId": {
69362
+ "anyOf": [
69363
+ {
69364
+ "type": "null"
69365
+ },
69366
+ {
69367
+ "type": "string"
69368
+ }
69369
+ ]
69370
+ },
69371
+ "programId": {
69372
+ "type": "string"
69373
+ },
69374
+ "state": {
69375
+ "anyOf": [
69376
+ {
69377
+ "const": "active"
69378
+ },
69379
+ {
69380
+ "const": "off"
69381
+ },
69382
+ {
69383
+ "const": "paused"
69384
+ }
69385
+ ]
69386
+ },
69387
+ "confirm": {
69388
+ "const": "groups.setPlaybookAutoStart"
69389
+ },
69390
+ "requestKey": {
69391
+ "type": "string",
69392
+ "minLength": 1,
69393
+ "maxLength": 128
69394
+ }
69395
+ },
69396
+ "required": [
69397
+ "programId",
69398
+ "state",
69399
+ "confirm",
69400
+ "requestKey"
69401
+ ],
69147
69402
  "additionalProperties": false
69148
69403
  }
69149
69404
  }
@@ -69155,136 +69410,677 @@
69155
69410
  "content": {
69156
69411
  "application/json": {
69157
69412
  "schema": {
69158
- "type": "array",
69159
- "items": {
69160
- "type": "object",
69161
- "properties": {
69162
- "count": {
69163
- "type": "number"
69413
+ "type": "object",
69414
+ "properties": {
69415
+ "receipt": {
69416
+ "type": "object",
69417
+ "properties": {
69418
+ "completedAt": {
69419
+ "anyOf": [
69420
+ {
69421
+ "type": "string",
69422
+ "format": "date-time"
69423
+ },
69424
+ {
69425
+ "type": "null"
69426
+ }
69427
+ ]
69428
+ },
69429
+ "createdAt": {
69430
+ "type": "string",
69431
+ "format": "date-time"
69432
+ },
69433
+ "id": {
69434
+ "type": "string",
69435
+ "format": "uuid"
69436
+ },
69437
+ "operation": {
69438
+ "type": "string"
69439
+ },
69440
+ "requestKey": {
69441
+ "type": "string"
69442
+ },
69443
+ "status": {
69444
+ "enum": [
69445
+ "running",
69446
+ "succeeded",
69447
+ "failed",
69448
+ "unknown"
69449
+ ],
69450
+ "type": "string"
69451
+ }
69164
69452
  },
69165
- "criteria": {
69166
- "type": "object",
69167
- "properties": {
69168
- "all": {
69169
- "type": "array",
69170
- "items": {
69453
+ "required": [
69454
+ "completedAt",
69455
+ "createdAt",
69456
+ "id",
69457
+ "operation",
69458
+ "requestKey",
69459
+ "status"
69460
+ ]
69461
+ },
69462
+ "result": {
69463
+ "anyOf": [
69464
+ {
69465
+ "type": "object",
69466
+ "properties": {
69467
+ "changed": {
69468
+ "type": "boolean"
69469
+ },
69470
+ "id": {
69471
+ "type": "string"
69472
+ },
69473
+ "state": {
69171
69474
  "anyOf": [
69172
69475
  {
69173
- "type": "object",
69174
- "properties": {
69175
- "attribute": {
69176
- "type": "string"
69177
- },
69178
- "operator": {
69179
- "type": "string"
69180
- },
69181
- "value": {
69182
- "anyOf": [
69183
- {
69184
- "type": "string"
69185
- },
69186
- {
69187
- "type": "number"
69188
- },
69189
- {
69190
- "const": false
69191
- },
69192
- {
69193
- "const": true
69194
- },
69195
- {
69196
- "type": "array",
69197
- "items": {
69198
- "type": "string"
69199
- }
69200
- }
69201
- ]
69202
- }
69203
- },
69204
- "required": [
69205
- "attribute",
69206
- "operator"
69207
- ],
69208
- "additionalProperties": false
69476
+ "const": "active"
69209
69477
  },
69210
69478
  {
69211
- "type": "object",
69212
- "properties": {
69213
- "any": {
69214
- "type": "array",
69215
- "items": {
69216
- "type": "object",
69217
- "properties": {
69218
- "attribute": {
69219
- "type": "string"
69220
- },
69221
- "operator": {
69222
- "type": "string"
69223
- },
69224
- "value": {
69225
- "anyOf": [
69226
- {
69227
- "type": "string"
69228
- },
69229
- {
69230
- "type": "number"
69231
- },
69232
- {
69233
- "const": false
69234
- },
69235
- {
69236
- "const": true
69237
- },
69238
- {
69239
- "type": "array",
69240
- "items": {
69241
- "type": "string"
69242
- }
69243
- }
69244
- ]
69245
- }
69246
- },
69247
- "required": [
69248
- "attribute",
69249
- "operator"
69250
- ],
69251
- "additionalProperties": false
69252
- }
69253
- }
69254
- },
69255
- "required": [
69256
- "any"
69257
- ],
69258
- "additionalProperties": false
69479
+ "const": "off"
69480
+ },
69481
+ {
69482
+ "const": "paused"
69259
69483
  }
69260
69484
  ]
69261
69485
  }
69262
- }
69486
+ },
69487
+ "required": [
69488
+ "changed",
69489
+ "id",
69490
+ "state"
69491
+ ],
69492
+ "additionalProperties": false
69263
69493
  },
69264
- "required": [
69265
- "all"
69266
- ],
69267
- "additionalProperties": false
69268
- },
69269
- "description": {
69270
- "type": "string"
69271
- },
69272
- "name": {
69273
- "type": "string"
69274
- },
69275
- "suggestion": {
69276
- "type": "string"
69277
- }
69278
- },
69279
- "required": [
69280
- "count",
69281
- "criteria",
69282
- "description",
69283
- "name",
69284
- "suggestion"
69285
- ],
69286
- "additionalProperties": false
69287
- }
69494
+ {
69495
+ "type": "null"
69496
+ }
69497
+ ]
69498
+ }
69499
+ },
69500
+ "required": [
69501
+ "receipt",
69502
+ "result"
69503
+ ]
69504
+ }
69505
+ }
69506
+ }
69507
+ },
69508
+ "400": {
69509
+ "description": "400",
69510
+ "content": {
69511
+ "application/json": {
69512
+ "schema": {
69513
+ "oneOf": [
69514
+ {
69515
+ "type": "object",
69516
+ "properties": {
69517
+ "defined": {
69518
+ "const": true
69519
+ },
69520
+ "code": {
69521
+ "const": "BAD_REQUEST"
69522
+ },
69523
+ "status": {
69524
+ "const": 400
69525
+ },
69526
+ "message": {
69527
+ "type": "string",
69528
+ "default": "Check the request input."
69529
+ },
69530
+ "data": {}
69531
+ },
69532
+ "required": [
69533
+ "defined",
69534
+ "code",
69535
+ "status",
69536
+ "message"
69537
+ ]
69538
+ },
69539
+ {
69540
+ "type": "object",
69541
+ "properties": {
69542
+ "defined": {
69543
+ "const": false
69544
+ },
69545
+ "code": {
69546
+ "type": "string"
69547
+ },
69548
+ "status": {
69549
+ "type": "number"
69550
+ },
69551
+ "message": {
69552
+ "type": "string"
69553
+ },
69554
+ "data": {}
69555
+ },
69556
+ "required": [
69557
+ "defined",
69558
+ "code",
69559
+ "status",
69560
+ "message"
69561
+ ]
69562
+ }
69563
+ ]
69564
+ }
69565
+ }
69566
+ }
69567
+ },
69568
+ "401": {
69569
+ "description": "401",
69570
+ "content": {
69571
+ "application/json": {
69572
+ "schema": {
69573
+ "oneOf": [
69574
+ {
69575
+ "type": "object",
69576
+ "properties": {
69577
+ "defined": {
69578
+ "const": true
69579
+ },
69580
+ "code": {
69581
+ "const": "UNAUTHORIZED"
69582
+ },
69583
+ "status": {
69584
+ "const": 401
69585
+ },
69586
+ "message": {
69587
+ "type": "string",
69588
+ "default": "A valid Shuffl API token is required."
69589
+ },
69590
+ "data": {}
69591
+ },
69592
+ "required": [
69593
+ "defined",
69594
+ "code",
69595
+ "status",
69596
+ "message"
69597
+ ]
69598
+ },
69599
+ {
69600
+ "type": "object",
69601
+ "properties": {
69602
+ "defined": {
69603
+ "const": false
69604
+ },
69605
+ "code": {
69606
+ "type": "string"
69607
+ },
69608
+ "status": {
69609
+ "type": "number"
69610
+ },
69611
+ "message": {
69612
+ "type": "string"
69613
+ },
69614
+ "data": {}
69615
+ },
69616
+ "required": [
69617
+ "defined",
69618
+ "code",
69619
+ "status",
69620
+ "message"
69621
+ ]
69622
+ }
69623
+ ]
69624
+ }
69625
+ }
69626
+ }
69627
+ },
69628
+ "403": {
69629
+ "description": "403",
69630
+ "content": {
69631
+ "application/json": {
69632
+ "schema": {
69633
+ "oneOf": [
69634
+ {
69635
+ "type": "object",
69636
+ "properties": {
69637
+ "defined": {
69638
+ "const": true
69639
+ },
69640
+ "code": {
69641
+ "const": "FORBIDDEN"
69642
+ },
69643
+ "status": {
69644
+ "const": 403
69645
+ },
69646
+ "message": {
69647
+ "type": "string",
69648
+ "default": "This token or team role does not permit the operation."
69649
+ },
69650
+ "data": {}
69651
+ },
69652
+ "required": [
69653
+ "defined",
69654
+ "code",
69655
+ "status",
69656
+ "message"
69657
+ ]
69658
+ },
69659
+ {
69660
+ "type": "object",
69661
+ "properties": {
69662
+ "defined": {
69663
+ "const": false
69664
+ },
69665
+ "code": {
69666
+ "type": "string"
69667
+ },
69668
+ "status": {
69669
+ "type": "number"
69670
+ },
69671
+ "message": {
69672
+ "type": "string"
69673
+ },
69674
+ "data": {}
69675
+ },
69676
+ "required": [
69677
+ "defined",
69678
+ "code",
69679
+ "status",
69680
+ "message"
69681
+ ]
69682
+ }
69683
+ ]
69684
+ }
69685
+ }
69686
+ }
69687
+ },
69688
+ "404": {
69689
+ "description": "404",
69690
+ "content": {
69691
+ "application/json": {
69692
+ "schema": {
69693
+ "oneOf": [
69694
+ {
69695
+ "type": "object",
69696
+ "properties": {
69697
+ "defined": {
69698
+ "const": true
69699
+ },
69700
+ "code": {
69701
+ "const": "NOT_FOUND"
69702
+ },
69703
+ "status": {
69704
+ "const": 404
69705
+ },
69706
+ "message": {
69707
+ "type": "string",
69708
+ "default": "The requested resource was not found."
69709
+ },
69710
+ "data": {}
69711
+ },
69712
+ "required": [
69713
+ "defined",
69714
+ "code",
69715
+ "status",
69716
+ "message"
69717
+ ]
69718
+ },
69719
+ {
69720
+ "type": "object",
69721
+ "properties": {
69722
+ "defined": {
69723
+ "const": false
69724
+ },
69725
+ "code": {
69726
+ "type": "string"
69727
+ },
69728
+ "status": {
69729
+ "type": "number"
69730
+ },
69731
+ "message": {
69732
+ "type": "string"
69733
+ },
69734
+ "data": {}
69735
+ },
69736
+ "required": [
69737
+ "defined",
69738
+ "code",
69739
+ "status",
69740
+ "message"
69741
+ ]
69742
+ }
69743
+ ]
69744
+ }
69745
+ }
69746
+ }
69747
+ },
69748
+ "409": {
69749
+ "description": "409",
69750
+ "content": {
69751
+ "application/json": {
69752
+ "schema": {
69753
+ "oneOf": [
69754
+ {
69755
+ "type": "object",
69756
+ "properties": {
69757
+ "defined": {
69758
+ "const": true
69759
+ },
69760
+ "code": {
69761
+ "const": "CONFLICT"
69762
+ },
69763
+ "status": {
69764
+ "const": 409
69765
+ },
69766
+ "message": {
69767
+ "type": "string",
69768
+ "default": "The resource changed or the request key was reused."
69769
+ },
69770
+ "data": {}
69771
+ },
69772
+ "required": [
69773
+ "defined",
69774
+ "code",
69775
+ "status",
69776
+ "message"
69777
+ ]
69778
+ },
69779
+ {
69780
+ "type": "object",
69781
+ "properties": {
69782
+ "defined": {
69783
+ "const": false
69784
+ },
69785
+ "code": {
69786
+ "type": "string"
69787
+ },
69788
+ "status": {
69789
+ "type": "number"
69790
+ },
69791
+ "message": {
69792
+ "type": "string"
69793
+ },
69794
+ "data": {}
69795
+ },
69796
+ "required": [
69797
+ "defined",
69798
+ "code",
69799
+ "status",
69800
+ "message"
69801
+ ]
69802
+ }
69803
+ ]
69804
+ }
69805
+ }
69806
+ }
69807
+ },
69808
+ "412": {
69809
+ "description": "412",
69810
+ "content": {
69811
+ "application/json": {
69812
+ "schema": {
69813
+ "oneOf": [
69814
+ {
69815
+ "type": "object",
69816
+ "properties": {
69817
+ "defined": {
69818
+ "const": true
69819
+ },
69820
+ "code": {
69821
+ "const": "PRECONDITION_FAILED"
69822
+ },
69823
+ "status": {
69824
+ "const": 412
69825
+ },
69826
+ "message": {
69827
+ "type": "string",
69828
+ "default": "The team is not ready for this operation."
69829
+ },
69830
+ "data": {}
69831
+ },
69832
+ "required": [
69833
+ "defined",
69834
+ "code",
69835
+ "status",
69836
+ "message"
69837
+ ]
69838
+ },
69839
+ {
69840
+ "type": "object",
69841
+ "properties": {
69842
+ "defined": {
69843
+ "const": false
69844
+ },
69845
+ "code": {
69846
+ "type": "string"
69847
+ },
69848
+ "status": {
69849
+ "type": "number"
69850
+ },
69851
+ "message": {
69852
+ "type": "string"
69853
+ },
69854
+ "data": {}
69855
+ },
69856
+ "required": [
69857
+ "defined",
69858
+ "code",
69859
+ "status",
69860
+ "message"
69861
+ ]
69862
+ }
69863
+ ]
69864
+ }
69865
+ }
69866
+ }
69867
+ },
69868
+ "429": {
69869
+ "description": "429",
69870
+ "content": {
69871
+ "application/json": {
69872
+ "schema": {
69873
+ "oneOf": [
69874
+ {
69875
+ "type": "object",
69876
+ "properties": {
69877
+ "defined": {
69878
+ "const": true
69879
+ },
69880
+ "code": {
69881
+ "const": "TOO_MANY_REQUESTS"
69882
+ },
69883
+ "status": {
69884
+ "const": 429
69885
+ },
69886
+ "message": {
69887
+ "type": "string",
69888
+ "default": "Too many requests. Try again shortly."
69889
+ },
69890
+ "data": {}
69891
+ },
69892
+ "required": [
69893
+ "defined",
69894
+ "code",
69895
+ "status",
69896
+ "message"
69897
+ ]
69898
+ },
69899
+ {
69900
+ "type": "object",
69901
+ "properties": {
69902
+ "defined": {
69903
+ "const": false
69904
+ },
69905
+ "code": {
69906
+ "type": "string"
69907
+ },
69908
+ "status": {
69909
+ "type": "number"
69910
+ },
69911
+ "message": {
69912
+ "type": "string"
69913
+ },
69914
+ "data": {}
69915
+ },
69916
+ "required": [
69917
+ "defined",
69918
+ "code",
69919
+ "status",
69920
+ "message"
69921
+ ]
69922
+ }
69923
+ ]
69924
+ }
69925
+ }
69926
+ }
69927
+ }
69928
+ },
69929
+ "x-shuffl-access": "write",
69930
+ "x-shuffl-permission": "groups.setPlaybookAutoStart"
69931
+ }
69932
+ },
69933
+ "/manage/groups/suggestions": {
69934
+ "post": {
69935
+ "operationId": "groups.suggestions",
69936
+ "summary": "Starter groups not made yet, with how many people each would hold",
69937
+ "requestBody": {
69938
+ "required": true,
69939
+ "content": {
69940
+ "application/json": {
69941
+ "schema": {
69942
+ "type": "object",
69943
+ "additionalProperties": false
69944
+ }
69945
+ }
69946
+ }
69947
+ },
69948
+ "responses": {
69949
+ "200": {
69950
+ "description": "OK",
69951
+ "content": {
69952
+ "application/json": {
69953
+ "schema": {
69954
+ "type": "array",
69955
+ "items": {
69956
+ "type": "object",
69957
+ "properties": {
69958
+ "count": {
69959
+ "type": "number"
69960
+ },
69961
+ "criteria": {
69962
+ "type": "object",
69963
+ "properties": {
69964
+ "all": {
69965
+ "type": "array",
69966
+ "items": {
69967
+ "anyOf": [
69968
+ {
69969
+ "type": "object",
69970
+ "properties": {
69971
+ "attribute": {
69972
+ "type": "string"
69973
+ },
69974
+ "operator": {
69975
+ "type": "string"
69976
+ },
69977
+ "value": {
69978
+ "anyOf": [
69979
+ {
69980
+ "type": "string"
69981
+ },
69982
+ {
69983
+ "type": "number"
69984
+ },
69985
+ {
69986
+ "const": false
69987
+ },
69988
+ {
69989
+ "const": true
69990
+ },
69991
+ {
69992
+ "type": "array",
69993
+ "items": {
69994
+ "type": "string"
69995
+ }
69996
+ }
69997
+ ]
69998
+ }
69999
+ },
70000
+ "required": [
70001
+ "attribute",
70002
+ "operator"
70003
+ ],
70004
+ "additionalProperties": false
70005
+ },
70006
+ {
70007
+ "type": "object",
70008
+ "properties": {
70009
+ "any": {
70010
+ "type": "array",
70011
+ "items": {
70012
+ "type": "object",
70013
+ "properties": {
70014
+ "attribute": {
70015
+ "type": "string"
70016
+ },
70017
+ "operator": {
70018
+ "type": "string"
70019
+ },
70020
+ "value": {
70021
+ "anyOf": [
70022
+ {
70023
+ "type": "string"
70024
+ },
70025
+ {
70026
+ "type": "number"
70027
+ },
70028
+ {
70029
+ "const": false
70030
+ },
70031
+ {
70032
+ "const": true
70033
+ },
70034
+ {
70035
+ "type": "array",
70036
+ "items": {
70037
+ "type": "string"
70038
+ }
70039
+ }
70040
+ ]
70041
+ }
70042
+ },
70043
+ "required": [
70044
+ "attribute",
70045
+ "operator"
70046
+ ],
70047
+ "additionalProperties": false
70048
+ }
70049
+ }
70050
+ },
70051
+ "required": [
70052
+ "any"
70053
+ ],
70054
+ "additionalProperties": false
70055
+ }
70056
+ ]
70057
+ }
70058
+ }
70059
+ },
70060
+ "required": [
70061
+ "all"
70062
+ ],
70063
+ "additionalProperties": false
70064
+ },
70065
+ "description": {
70066
+ "type": "string"
70067
+ },
70068
+ "name": {
70069
+ "type": "string"
70070
+ },
70071
+ "suggestion": {
70072
+ "type": "string"
70073
+ }
70074
+ },
70075
+ "required": [
70076
+ "count",
70077
+ "criteria",
70078
+ "description",
70079
+ "name",
70080
+ "suggestion"
70081
+ ],
70082
+ "additionalProperties": false
70083
+ }
69288
70084
  }
69289
70085
  }
69290
70086
  }
@@ -131020,19 +131816,790 @@
131020
131816
  }
131021
131817
  },
131022
131818
  "x-shuffl-access": "read",
131023
- "x-shuffl-permission": "playbooks.firstDaysResults"
131819
+ "x-shuffl-permission": "playbooks.firstDaysResults"
131820
+ }
131821
+ },
131822
+ "/manage/playbooks/mine": {
131823
+ "post": {
131824
+ "operationId": "playbooks.mine",
131825
+ "summary": "Read your own onboarding plan and buddy asks",
131826
+ "requestBody": {
131827
+ "required": true,
131828
+ "content": {
131829
+ "application/json": {
131830
+ "schema": {
131831
+ "type": "object",
131832
+ "additionalProperties": false
131833
+ }
131834
+ }
131835
+ }
131836
+ },
131837
+ "responses": {
131838
+ "200": {
131839
+ "description": "OK",
131840
+ "content": {
131841
+ "application/json": {
131842
+ "schema": {
131843
+ "anyOf": [
131844
+ {
131845
+ "type": "object",
131846
+ "properties": {
131847
+ "buddyAsks": {
131848
+ "type": "array",
131849
+ "items": {
131850
+ "not": {}
131851
+ }
131852
+ },
131853
+ "buddyName": {
131854
+ "type": "null"
131855
+ },
131856
+ "checkIns": {
131857
+ "type": "array",
131858
+ "items": {
131859
+ "not": {}
131860
+ }
131861
+ },
131862
+ "enrolled": {
131863
+ "type": "boolean"
131864
+ },
131865
+ "invitations": {
131866
+ "type": "array",
131867
+ "items": {
131868
+ "not": {}
131869
+ }
131870
+ },
131871
+ "myAsks": {
131872
+ "type": "array",
131873
+ "items": {
131874
+ "not": {}
131875
+ }
131876
+ },
131877
+ "personId": {
131878
+ "type": "null"
131879
+ }
131880
+ },
131881
+ "required": [
131882
+ "buddyAsks",
131883
+ "buddyName",
131884
+ "checkIns",
131885
+ "enrolled",
131886
+ "invitations",
131887
+ "myAsks",
131888
+ "personId"
131889
+ ],
131890
+ "additionalProperties": false
131891
+ },
131892
+ {
131893
+ "type": "object",
131894
+ "properties": {
131895
+ "buddyAsks": {
131896
+ "type": "array",
131897
+ "items": {
131898
+ "type": "object",
131899
+ "properties": {
131900
+ "hireName": {
131901
+ "type": "string"
131902
+ },
131903
+ "hirePersonId": {
131904
+ "type": "string"
131905
+ },
131906
+ "id": {
131907
+ "type": "string"
131908
+ },
131909
+ "status": {
131910
+ "anyOf": [
131911
+ {
131912
+ "const": "accepted"
131913
+ },
131914
+ {
131915
+ "const": "pending"
131916
+ }
131917
+ ]
131918
+ }
131919
+ },
131920
+ "required": [
131921
+ "hireName",
131922
+ "hirePersonId",
131923
+ "id",
131924
+ "status"
131925
+ ],
131926
+ "additionalProperties": false
131927
+ }
131928
+ },
131929
+ "buddyName": {
131930
+ "anyOf": [
131931
+ {
131932
+ "type": "null"
131933
+ },
131934
+ {
131935
+ "type": "string"
131936
+ }
131937
+ ]
131938
+ },
131939
+ "checkIns": {
131940
+ "type": "array",
131941
+ "items": {
131942
+ "type": "object",
131943
+ "properties": {
131944
+ "answer": {
131945
+ "anyOf": [
131946
+ {
131947
+ "type": "null"
131948
+ },
131949
+ {
131950
+ "const": "all_good"
131951
+ },
131952
+ {
131953
+ "const": "need_help"
131954
+ }
131955
+ ]
131956
+ },
131957
+ "answeredAt": {
131958
+ "anyOf": [
131959
+ {
131960
+ "type": "null"
131961
+ },
131962
+ {
131963
+ "type": "string",
131964
+ "format": "date-time"
131965
+ }
131966
+ ]
131967
+ },
131968
+ "buddyName": {
131969
+ "anyOf": [
131970
+ {
131971
+ "type": "null"
131972
+ },
131973
+ {
131974
+ "type": "string"
131975
+ }
131976
+ ]
131977
+ },
131978
+ "dueAt": {
131979
+ "type": "string",
131980
+ "format": "date-time"
131981
+ },
131982
+ "enrollmentId": {
131983
+ "type": "string"
131984
+ },
131985
+ "programName": {
131986
+ "type": "string"
131987
+ },
131988
+ "status": {
131989
+ "anyOf": [
131990
+ {
131991
+ "const": "accepted"
131992
+ },
131993
+ {
131994
+ "const": "answered"
131995
+ },
131996
+ {
131997
+ "const": "canceled"
131998
+ },
131999
+ {
132000
+ "const": "declined"
132001
+ },
132002
+ {
132003
+ "const": "failed"
132004
+ },
132005
+ {
132006
+ "const": "needs_review"
132007
+ },
132008
+ {
132009
+ "const": "opened"
132010
+ },
132011
+ {
132012
+ "const": "scheduled"
132013
+ },
132014
+ {
132015
+ "const": "sent"
132016
+ },
132017
+ {
132018
+ "const": "skipped"
132019
+ },
132020
+ {
132021
+ "const": "unknown"
132022
+ },
132023
+ {
132024
+ "const": "waiting"
132025
+ }
132026
+ ]
132027
+ },
132028
+ "stepId": {
132029
+ "type": "string"
132030
+ }
132031
+ },
132032
+ "required": [
132033
+ "answer",
132034
+ "answeredAt",
132035
+ "buddyName",
132036
+ "dueAt",
132037
+ "enrollmentId",
132038
+ "programName",
132039
+ "status",
132040
+ "stepId"
132041
+ ],
132042
+ "additionalProperties": false
132043
+ }
132044
+ },
132045
+ "enrolled": {
132046
+ "type": "boolean"
132047
+ },
132048
+ "invitations": {
132049
+ "type": "array",
132050
+ "items": {
132051
+ "type": "object",
132052
+ "properties": {
132053
+ "hireName": {
132054
+ "type": "string"
132055
+ },
132056
+ "id": {
132057
+ "type": "string"
132058
+ },
132059
+ "programName": {
132060
+ "type": "string"
132061
+ },
132062
+ "startDate": {
132063
+ "type": "string"
132064
+ },
132065
+ "status": {
132066
+ "anyOf": [
132067
+ {
132068
+ "const": "accepted"
132069
+ },
132070
+ {
132071
+ "const": "declined"
132072
+ },
132073
+ {
132074
+ "const": "pending"
132075
+ },
132076
+ {
132077
+ "const": "withdrawn"
132078
+ }
132079
+ ]
132080
+ }
132081
+ },
132082
+ "required": [
132083
+ "hireName",
132084
+ "id",
132085
+ "programName",
132086
+ "startDate",
132087
+ "status"
132088
+ ],
132089
+ "additionalProperties": false
132090
+ }
132091
+ },
132092
+ "myAsks": {
132093
+ "type": "array",
132094
+ "items": {
132095
+ "type": "object",
132096
+ "properties": {
132097
+ "buddyName": {
132098
+ "type": "string"
132099
+ },
132100
+ "buddyPersonId": {
132101
+ "type": "string"
132102
+ },
132103
+ "id": {
132104
+ "type": "string"
132105
+ },
132106
+ "status": {
132107
+ "anyOf": [
132108
+ {
132109
+ "const": "declined"
132110
+ },
132111
+ {
132112
+ "const": "pending"
132113
+ }
132114
+ ]
132115
+ }
132116
+ },
132117
+ "required": [
132118
+ "buddyName",
132119
+ "buddyPersonId",
132120
+ "id",
132121
+ "status"
132122
+ ],
132123
+ "additionalProperties": false
132124
+ }
132125
+ },
132126
+ "personId": {
132127
+ "type": "string"
132128
+ }
132129
+ },
132130
+ "required": [
132131
+ "buddyAsks",
132132
+ "buddyName",
132133
+ "checkIns",
132134
+ "enrolled",
132135
+ "invitations",
132136
+ "myAsks",
132137
+ "personId"
132138
+ ],
132139
+ "additionalProperties": false
132140
+ }
132141
+ ]
132142
+ }
132143
+ }
132144
+ }
132145
+ },
132146
+ "400": {
132147
+ "description": "400",
132148
+ "content": {
132149
+ "application/json": {
132150
+ "schema": {
132151
+ "oneOf": [
132152
+ {
132153
+ "type": "object",
132154
+ "properties": {
132155
+ "defined": {
132156
+ "const": true
132157
+ },
132158
+ "code": {
132159
+ "const": "BAD_REQUEST"
132160
+ },
132161
+ "status": {
132162
+ "const": 400
132163
+ },
132164
+ "message": {
132165
+ "type": "string",
132166
+ "default": "Check the request input."
132167
+ },
132168
+ "data": {}
132169
+ },
132170
+ "required": [
132171
+ "defined",
132172
+ "code",
132173
+ "status",
132174
+ "message"
132175
+ ]
132176
+ },
132177
+ {
132178
+ "type": "object",
132179
+ "properties": {
132180
+ "defined": {
132181
+ "const": false
132182
+ },
132183
+ "code": {
132184
+ "type": "string"
132185
+ },
132186
+ "status": {
132187
+ "type": "number"
132188
+ },
132189
+ "message": {
132190
+ "type": "string"
132191
+ },
132192
+ "data": {}
132193
+ },
132194
+ "required": [
132195
+ "defined",
132196
+ "code",
132197
+ "status",
132198
+ "message"
132199
+ ]
132200
+ }
132201
+ ]
132202
+ }
132203
+ }
132204
+ }
132205
+ },
132206
+ "401": {
132207
+ "description": "401",
132208
+ "content": {
132209
+ "application/json": {
132210
+ "schema": {
132211
+ "oneOf": [
132212
+ {
132213
+ "type": "object",
132214
+ "properties": {
132215
+ "defined": {
132216
+ "const": true
132217
+ },
132218
+ "code": {
132219
+ "const": "UNAUTHORIZED"
132220
+ },
132221
+ "status": {
132222
+ "const": 401
132223
+ },
132224
+ "message": {
132225
+ "type": "string",
132226
+ "default": "A valid Shuffl API token is required."
132227
+ },
132228
+ "data": {}
132229
+ },
132230
+ "required": [
132231
+ "defined",
132232
+ "code",
132233
+ "status",
132234
+ "message"
132235
+ ]
132236
+ },
132237
+ {
132238
+ "type": "object",
132239
+ "properties": {
132240
+ "defined": {
132241
+ "const": false
132242
+ },
132243
+ "code": {
132244
+ "type": "string"
132245
+ },
132246
+ "status": {
132247
+ "type": "number"
132248
+ },
132249
+ "message": {
132250
+ "type": "string"
132251
+ },
132252
+ "data": {}
132253
+ },
132254
+ "required": [
132255
+ "defined",
132256
+ "code",
132257
+ "status",
132258
+ "message"
132259
+ ]
132260
+ }
132261
+ ]
132262
+ }
132263
+ }
132264
+ }
132265
+ },
132266
+ "403": {
132267
+ "description": "403",
132268
+ "content": {
132269
+ "application/json": {
132270
+ "schema": {
132271
+ "oneOf": [
132272
+ {
132273
+ "type": "object",
132274
+ "properties": {
132275
+ "defined": {
132276
+ "const": true
132277
+ },
132278
+ "code": {
132279
+ "const": "FORBIDDEN"
132280
+ },
132281
+ "status": {
132282
+ "const": 403
132283
+ },
132284
+ "message": {
132285
+ "type": "string",
132286
+ "default": "This token or team role does not permit the operation."
132287
+ },
132288
+ "data": {}
132289
+ },
132290
+ "required": [
132291
+ "defined",
132292
+ "code",
132293
+ "status",
132294
+ "message"
132295
+ ]
132296
+ },
132297
+ {
132298
+ "type": "object",
132299
+ "properties": {
132300
+ "defined": {
132301
+ "const": false
132302
+ },
132303
+ "code": {
132304
+ "type": "string"
132305
+ },
132306
+ "status": {
132307
+ "type": "number"
132308
+ },
132309
+ "message": {
132310
+ "type": "string"
132311
+ },
132312
+ "data": {}
132313
+ },
132314
+ "required": [
132315
+ "defined",
132316
+ "code",
132317
+ "status",
132318
+ "message"
132319
+ ]
132320
+ }
132321
+ ]
132322
+ }
132323
+ }
132324
+ }
132325
+ },
132326
+ "404": {
132327
+ "description": "404",
132328
+ "content": {
132329
+ "application/json": {
132330
+ "schema": {
132331
+ "oneOf": [
132332
+ {
132333
+ "type": "object",
132334
+ "properties": {
132335
+ "defined": {
132336
+ "const": true
132337
+ },
132338
+ "code": {
132339
+ "const": "NOT_FOUND"
132340
+ },
132341
+ "status": {
132342
+ "const": 404
132343
+ },
132344
+ "message": {
132345
+ "type": "string",
132346
+ "default": "The requested resource was not found."
132347
+ },
132348
+ "data": {}
132349
+ },
132350
+ "required": [
132351
+ "defined",
132352
+ "code",
132353
+ "status",
132354
+ "message"
132355
+ ]
132356
+ },
132357
+ {
132358
+ "type": "object",
132359
+ "properties": {
132360
+ "defined": {
132361
+ "const": false
132362
+ },
132363
+ "code": {
132364
+ "type": "string"
132365
+ },
132366
+ "status": {
132367
+ "type": "number"
132368
+ },
132369
+ "message": {
132370
+ "type": "string"
132371
+ },
132372
+ "data": {}
132373
+ },
132374
+ "required": [
132375
+ "defined",
132376
+ "code",
132377
+ "status",
132378
+ "message"
132379
+ ]
132380
+ }
132381
+ ]
132382
+ }
132383
+ }
132384
+ }
132385
+ },
132386
+ "409": {
132387
+ "description": "409",
132388
+ "content": {
132389
+ "application/json": {
132390
+ "schema": {
132391
+ "oneOf": [
132392
+ {
132393
+ "type": "object",
132394
+ "properties": {
132395
+ "defined": {
132396
+ "const": true
132397
+ },
132398
+ "code": {
132399
+ "const": "CONFLICT"
132400
+ },
132401
+ "status": {
132402
+ "const": 409
132403
+ },
132404
+ "message": {
132405
+ "type": "string",
132406
+ "default": "The resource changed or the request key was reused."
132407
+ },
132408
+ "data": {}
132409
+ },
132410
+ "required": [
132411
+ "defined",
132412
+ "code",
132413
+ "status",
132414
+ "message"
132415
+ ]
132416
+ },
132417
+ {
132418
+ "type": "object",
132419
+ "properties": {
132420
+ "defined": {
132421
+ "const": false
132422
+ },
132423
+ "code": {
132424
+ "type": "string"
132425
+ },
132426
+ "status": {
132427
+ "type": "number"
132428
+ },
132429
+ "message": {
132430
+ "type": "string"
132431
+ },
132432
+ "data": {}
132433
+ },
132434
+ "required": [
132435
+ "defined",
132436
+ "code",
132437
+ "status",
132438
+ "message"
132439
+ ]
132440
+ }
132441
+ ]
132442
+ }
132443
+ }
132444
+ }
132445
+ },
132446
+ "412": {
132447
+ "description": "412",
132448
+ "content": {
132449
+ "application/json": {
132450
+ "schema": {
132451
+ "oneOf": [
132452
+ {
132453
+ "type": "object",
132454
+ "properties": {
132455
+ "defined": {
132456
+ "const": true
132457
+ },
132458
+ "code": {
132459
+ "const": "PRECONDITION_FAILED"
132460
+ },
132461
+ "status": {
132462
+ "const": 412
132463
+ },
132464
+ "message": {
132465
+ "type": "string",
132466
+ "default": "The team is not ready for this operation."
132467
+ },
132468
+ "data": {}
132469
+ },
132470
+ "required": [
132471
+ "defined",
132472
+ "code",
132473
+ "status",
132474
+ "message"
132475
+ ]
132476
+ },
132477
+ {
132478
+ "type": "object",
132479
+ "properties": {
132480
+ "defined": {
132481
+ "const": false
132482
+ },
132483
+ "code": {
132484
+ "type": "string"
132485
+ },
132486
+ "status": {
132487
+ "type": "number"
132488
+ },
132489
+ "message": {
132490
+ "type": "string"
132491
+ },
132492
+ "data": {}
132493
+ },
132494
+ "required": [
132495
+ "defined",
132496
+ "code",
132497
+ "status",
132498
+ "message"
132499
+ ]
132500
+ }
132501
+ ]
132502
+ }
132503
+ }
132504
+ }
132505
+ },
132506
+ "429": {
132507
+ "description": "429",
132508
+ "content": {
132509
+ "application/json": {
132510
+ "schema": {
132511
+ "oneOf": [
132512
+ {
132513
+ "type": "object",
132514
+ "properties": {
132515
+ "defined": {
132516
+ "const": true
132517
+ },
132518
+ "code": {
132519
+ "const": "TOO_MANY_REQUESTS"
132520
+ },
132521
+ "status": {
132522
+ "const": 429
132523
+ },
132524
+ "message": {
132525
+ "type": "string",
132526
+ "default": "Too many requests. Try again shortly."
132527
+ },
132528
+ "data": {}
132529
+ },
132530
+ "required": [
132531
+ "defined",
132532
+ "code",
132533
+ "status",
132534
+ "message"
132535
+ ]
132536
+ },
132537
+ {
132538
+ "type": "object",
132539
+ "properties": {
132540
+ "defined": {
132541
+ "const": false
132542
+ },
132543
+ "code": {
132544
+ "type": "string"
132545
+ },
132546
+ "status": {
132547
+ "type": "number"
132548
+ },
132549
+ "message": {
132550
+ "type": "string"
132551
+ },
132552
+ "data": {}
132553
+ },
132554
+ "required": [
132555
+ "defined",
132556
+ "code",
132557
+ "status",
132558
+ "message"
132559
+ ]
132560
+ }
132561
+ ]
132562
+ }
132563
+ }
132564
+ }
132565
+ }
132566
+ },
132567
+ "x-shuffl-access": "read",
132568
+ "x-shuffl-permission": "playbooks.mine"
131024
132569
  }
131025
132570
  },
131026
- "/manage/playbooks/mine": {
132571
+ "/manage/playbooks/nudge": {
131027
132572
  "post": {
131028
- "operationId": "playbooks.mine",
131029
- "summary": "Read your own onboarding plan and buddy asks",
132573
+ "operationId": "playbooks.nudge",
132574
+ "summary": "Send someone one Slack nudge about a hire’s overdue playbook to-dos, at most once a day",
131030
132575
  "requestBody": {
131031
132576
  "required": true,
131032
132577
  "content": {
131033
132578
  "application/json": {
131034
132579
  "schema": {
131035
132580
  "type": "object",
132581
+ "properties": {
132582
+ "enrollmentId": {
132583
+ "type": "string"
132584
+ },
132585
+ "ownerPersonId": {
132586
+ "type": "string"
132587
+ },
132588
+ "confirm": {
132589
+ "const": "playbooks.nudge"
132590
+ },
132591
+ "requestKey": {
132592
+ "type": "string",
132593
+ "minLength": 1,
132594
+ "maxLength": 128
132595
+ }
132596
+ },
132597
+ "required": [
132598
+ "enrollmentId",
132599
+ "ownerPersonId",
132600
+ "confirm",
132601
+ "requestKey"
132602
+ ],
131036
132603
  "additionalProperties": false
131037
132604
  }
131038
132605
  }
@@ -131044,304 +132611,113 @@
131044
132611
  "content": {
131045
132612
  "application/json": {
131046
132613
  "schema": {
131047
- "anyOf": [
131048
- {
131049
- "type": "object",
131050
- "properties": {
131051
- "buddyAsks": {
131052
- "type": "array",
131053
- "items": {
131054
- "not": {}
131055
- }
131056
- },
131057
- "buddyName": {
131058
- "type": "null"
131059
- },
131060
- "checkIns": {
131061
- "type": "array",
131062
- "items": {
131063
- "not": {}
131064
- }
131065
- },
131066
- "enrolled": {
131067
- "type": "boolean"
131068
- },
131069
- "invitations": {
131070
- "type": "array",
131071
- "items": {
131072
- "not": {}
131073
- }
131074
- },
131075
- "myAsks": {
131076
- "type": "array",
131077
- "items": {
131078
- "not": {}
131079
- }
131080
- },
131081
- "personId": {
131082
- "type": "null"
131083
- }
131084
- },
131085
- "required": [
131086
- "buddyAsks",
131087
- "buddyName",
131088
- "checkIns",
131089
- "enrolled",
131090
- "invitations",
131091
- "myAsks",
131092
- "personId"
131093
- ],
131094
- "additionalProperties": false
131095
- },
131096
- {
132614
+ "type": "object",
132615
+ "properties": {
132616
+ "receipt": {
131097
132617
  "type": "object",
131098
132618
  "properties": {
131099
- "buddyAsks": {
131100
- "type": "array",
131101
- "items": {
131102
- "type": "object",
131103
- "properties": {
131104
- "hireName": {
131105
- "type": "string"
131106
- },
131107
- "hirePersonId": {
131108
- "type": "string"
131109
- },
131110
- "id": {
131111
- "type": "string"
131112
- },
131113
- "status": {
131114
- "anyOf": [
131115
- {
131116
- "const": "accepted"
131117
- },
131118
- {
131119
- "const": "pending"
131120
- }
131121
- ]
131122
- }
131123
- },
131124
- "required": [
131125
- "hireName",
131126
- "hirePersonId",
131127
- "id",
131128
- "status"
131129
- ],
131130
- "additionalProperties": false
131131
- }
131132
- },
131133
- "buddyName": {
132619
+ "completedAt": {
131134
132620
  "anyOf": [
131135
132621
  {
131136
- "type": "null"
132622
+ "type": "string",
132623
+ "format": "date-time"
131137
132624
  },
131138
132625
  {
131139
- "type": "string"
132626
+ "type": "null"
131140
132627
  }
131141
132628
  ]
131142
132629
  },
131143
- "checkIns": {
131144
- "type": "array",
131145
- "items": {
131146
- "type": "object",
131147
- "properties": {
131148
- "answer": {
131149
- "anyOf": [
131150
- {
131151
- "type": "null"
131152
- },
131153
- {
131154
- "const": "all_good"
131155
- },
131156
- {
131157
- "const": "need_help"
131158
- }
131159
- ]
131160
- },
131161
- "answeredAt": {
131162
- "anyOf": [
131163
- {
131164
- "type": "null"
131165
- },
131166
- {
131167
- "type": "string",
131168
- "format": "date-time"
131169
- }
131170
- ]
131171
- },
131172
- "buddyName": {
131173
- "anyOf": [
131174
- {
131175
- "type": "null"
131176
- },
131177
- {
131178
- "type": "string"
131179
- }
131180
- ]
131181
- },
131182
- "dueAt": {
131183
- "type": "string",
131184
- "format": "date-time"
131185
- },
131186
- "enrollmentId": {
131187
- "type": "string"
131188
- },
131189
- "programName": {
131190
- "type": "string"
131191
- },
131192
- "status": {
131193
- "anyOf": [
131194
- {
131195
- "const": "accepted"
131196
- },
131197
- {
131198
- "const": "answered"
131199
- },
131200
- {
131201
- "const": "canceled"
131202
- },
131203
- {
131204
- "const": "declined"
131205
- },
131206
- {
131207
- "const": "failed"
131208
- },
131209
- {
131210
- "const": "needs_review"
131211
- },
131212
- {
131213
- "const": "opened"
131214
- },
131215
- {
131216
- "const": "scheduled"
131217
- },
131218
- {
131219
- "const": "sent"
131220
- },
131221
- {
131222
- "const": "skipped"
131223
- },
131224
- {
131225
- "const": "unknown"
131226
- },
131227
- {
131228
- "const": "waiting"
131229
- }
131230
- ]
131231
- },
131232
- "stepId": {
131233
- "type": "string"
131234
- }
131235
- },
131236
- "required": [
131237
- "answer",
131238
- "answeredAt",
131239
- "buddyName",
131240
- "dueAt",
131241
- "enrollmentId",
131242
- "programName",
131243
- "status",
131244
- "stepId"
131245
- ],
131246
- "additionalProperties": false
131247
- }
132630
+ "createdAt": {
132631
+ "type": "string",
132632
+ "format": "date-time"
131248
132633
  },
131249
- "enrolled": {
131250
- "type": "boolean"
132634
+ "id": {
132635
+ "type": "string",
132636
+ "format": "uuid"
131251
132637
  },
131252
- "invitations": {
131253
- "type": "array",
131254
- "items": {
131255
- "type": "object",
131256
- "properties": {
131257
- "hireName": {
131258
- "type": "string"
131259
- },
131260
- "id": {
131261
- "type": "string"
131262
- },
131263
- "programName": {
131264
- "type": "string"
131265
- },
131266
- "startDate": {
131267
- "type": "string"
131268
- },
131269
- "status": {
131270
- "anyOf": [
131271
- {
131272
- "const": "accepted"
131273
- },
131274
- {
131275
- "const": "declined"
131276
- },
131277
- {
131278
- "const": "pending"
131279
- },
131280
- {
131281
- "const": "withdrawn"
131282
- }
131283
- ]
131284
- }
131285
- },
131286
- "required": [
131287
- "hireName",
131288
- "id",
131289
- "programName",
131290
- "startDate",
131291
- "status"
131292
- ],
131293
- "additionalProperties": false
131294
- }
132638
+ "operation": {
132639
+ "type": "string"
131295
132640
  },
131296
- "myAsks": {
131297
- "type": "array",
131298
- "items": {
131299
- "type": "object",
131300
- "properties": {
131301
- "buddyName": {
131302
- "type": "string"
131303
- },
131304
- "buddyPersonId": {
131305
- "type": "string"
131306
- },
131307
- "id": {
131308
- "type": "string"
131309
- },
131310
- "status": {
131311
- "anyOf": [
131312
- {
131313
- "const": "declined"
131314
- },
131315
- {
131316
- "const": "pending"
131317
- }
131318
- ]
131319
- }
131320
- },
131321
- "required": [
131322
- "buddyName",
131323
- "buddyPersonId",
131324
- "id",
131325
- "status"
131326
- ],
131327
- "additionalProperties": false
131328
- }
132641
+ "requestKey": {
132642
+ "type": "string"
131329
132643
  },
131330
- "personId": {
132644
+ "status": {
132645
+ "enum": [
132646
+ "running",
132647
+ "succeeded",
132648
+ "failed",
132649
+ "unknown"
132650
+ ],
131331
132651
  "type": "string"
131332
132652
  }
131333
132653
  },
131334
132654
  "required": [
131335
- "buddyAsks",
131336
- "buddyName",
131337
- "checkIns",
131338
- "enrolled",
131339
- "invitations",
131340
- "myAsks",
131341
- "personId"
131342
- ],
131343
- "additionalProperties": false
132655
+ "completedAt",
132656
+ "createdAt",
132657
+ "id",
132658
+ "operation",
132659
+ "requestKey",
132660
+ "status"
132661
+ ]
132662
+ },
132663
+ "result": {
132664
+ "anyOf": [
132665
+ {
132666
+ "type": "object",
132667
+ "properties": {
132668
+ "nudgedAt": {
132669
+ "anyOf": [
132670
+ {
132671
+ "type": "null"
132672
+ },
132673
+ {
132674
+ "type": "string",
132675
+ "format": "date-time"
132676
+ }
132677
+ ]
132678
+ },
132679
+ "status": {
132680
+ "anyOf": [
132681
+ {
132682
+ "const": "failed"
132683
+ },
132684
+ {
132685
+ "const": "no_slack"
132686
+ },
132687
+ {
132688
+ "const": "nothing_overdue"
132689
+ },
132690
+ {
132691
+ "const": "off"
132692
+ },
132693
+ {
132694
+ "const": "recent"
132695
+ },
132696
+ {
132697
+ "const": "sent"
132698
+ }
132699
+ ]
132700
+ },
132701
+ "todos": {
132702
+ "type": "number"
132703
+ }
132704
+ },
132705
+ "required": [
132706
+ "nudgedAt",
132707
+ "status",
132708
+ "todos"
132709
+ ],
132710
+ "additionalProperties": false
132711
+ },
132712
+ {
132713
+ "type": "null"
132714
+ }
132715
+ ]
131344
132716
  }
132717
+ },
132718
+ "required": [
132719
+ "receipt",
132720
+ "result"
131345
132721
  ]
131346
132722
  }
131347
132723
  }
@@ -131768,8 +133144,8 @@
131768
133144
  }
131769
133145
  }
131770
133146
  },
131771
- "x-shuffl-access": "read",
131772
- "x-shuffl-permission": "playbooks.mine"
133147
+ "x-shuffl-access": "write",
133148
+ "x-shuffl-permission": "playbooks.nudge"
131773
133149
  }
131774
133150
  },
131775
133151
  "/manage/playbooks/person": {
@@ -134304,6 +135680,16 @@
134304
135680
  }
134305
135681
  ]
134306
135682
  },
135683
+ "autoStartPaused": {
135684
+ "anyOf": [
135685
+ {
135686
+ "const": false
135687
+ },
135688
+ {
135689
+ "const": true
135690
+ }
135691
+ ]
135692
+ },
134307
135693
  "buddy": {
134308
135694
  "anyOf": [
134309
135695
  {
@@ -134672,6 +136058,37 @@
134672
136058
  ],
134673
136059
  "additionalProperties": false
134674
136060
  },
136061
+ "hires": {
136062
+ "type": "object",
136063
+ "properties": {
136064
+ "active": {
136065
+ "type": "number"
136066
+ },
136067
+ "askedForHelp": {
136068
+ "type": "number"
136069
+ },
136070
+ "onTime": {
136071
+ "anyOf": [
136072
+ {
136073
+ "type": "null"
136074
+ },
136075
+ {
136076
+ "type": "number"
136077
+ }
136078
+ ]
136079
+ },
136080
+ "overdue": {
136081
+ "type": "number"
136082
+ }
136083
+ },
136084
+ "required": [
136085
+ "active",
136086
+ "askedForHelp",
136087
+ "onTime",
136088
+ "overdue"
136089
+ ],
136090
+ "additionalProperties": false
136091
+ },
134675
136092
  "intro": {
134676
136093
  "type": "string"
134677
136094
  },
@@ -134924,6 +136341,131 @@
134924
136341
  }
134925
136342
  ]
134926
136343
  },
136344
+ "progress": {
136345
+ "anyOf": [
136346
+ {
136347
+ "type": "null"
136348
+ },
136349
+ {
136350
+ "type": "object",
136351
+ "properties": {
136352
+ "day": {
136353
+ "type": "number"
136354
+ },
136355
+ "done": {
136356
+ "type": "number"
136357
+ },
136358
+ "help": {
136359
+ "type": "boolean"
136360
+ },
136361
+ "next": {
136362
+ "anyOf": [
136363
+ {
136364
+ "type": "null"
136365
+ },
136366
+ {
136367
+ "type": "object",
136368
+ "properties": {
136369
+ "at": {
136370
+ "anyOf": [
136371
+ {
136372
+ "type": "null"
136373
+ },
136374
+ {
136375
+ "type": "string",
136376
+ "format": "date-time"
136377
+ }
136378
+ ]
136379
+ },
136380
+ "title": {
136381
+ "type": "string"
136382
+ }
136383
+ },
136384
+ "required": [
136385
+ "at",
136386
+ "title"
136387
+ ],
136388
+ "additionalProperties": false
136389
+ }
136390
+ ]
136391
+ },
136392
+ "overdue": {
136393
+ "type": "array",
136394
+ "items": {
136395
+ "type": "object",
136396
+ "properties": {
136397
+ "count": {
136398
+ "type": "number"
136399
+ },
136400
+ "nudgedAt": {
136401
+ "anyOf": [
136402
+ {
136403
+ "type": "null"
136404
+ },
136405
+ {
136406
+ "type": "string",
136407
+ "format": "date-time"
136408
+ }
136409
+ ]
136410
+ },
136411
+ "ownerId": {
136412
+ "type": "string"
136413
+ },
136414
+ "ownerName": {
136415
+ "type": "string"
136416
+ },
136417
+ "role": {
136418
+ "anyOf": [
136419
+ {
136420
+ "const": "buddy"
136421
+ },
136422
+ {
136423
+ "const": "hire"
136424
+ },
136425
+ {
136426
+ "const": "manager"
136427
+ },
136428
+ {
136429
+ "const": "other"
136430
+ }
136431
+ ]
136432
+ },
136433
+ "since": {
136434
+ "type": "string",
136435
+ "format": "date-time"
136436
+ }
136437
+ },
136438
+ "required": [
136439
+ "count",
136440
+ "nudgedAt",
136441
+ "ownerId",
136442
+ "ownerName",
136443
+ "role",
136444
+ "since"
136445
+ ],
136446
+ "additionalProperties": false
136447
+ }
136448
+ },
136449
+ "total": {
136450
+ "type": "number"
136451
+ },
136452
+ "unconfirmed": {
136453
+ "type": "number"
136454
+ }
136455
+ },
136456
+ "required": [
136457
+ "day",
136458
+ "done",
136459
+ "help",
136460
+ "next",
136461
+ "overdue",
136462
+ "total",
136463
+ "unconfirmed"
136464
+ ],
136465
+ "additionalProperties": false
136466
+ }
136467
+ ]
136468
+ },
134927
136469
  "removalReason": {
134928
136470
  "anyOf": [
134929
136471
  {
@@ -135278,6 +136820,7 @@
135278
136820
  "id",
135279
136821
  "person",
135280
136822
  "plan",
136823
+ "progress",
135281
136824
  "removalReason",
135282
136825
  "revision",
135283
136826
  "startDate",
@@ -135300,6 +136843,7 @@
135300
136843
  },
135301
136844
  "required": [
135302
136845
  "config",
136846
+ "hires",
135303
136847
  "intro",
135304
136848
  "program",
135305
136849
  "responderName",
@@ -139282,6 +140826,16 @@
139282
140826
  }
139283
140827
  ]
139284
140828
  },
140829
+ "autoStartPaused": {
140830
+ "anyOf": [
140831
+ {
140832
+ "const": false
140833
+ },
140834
+ {
140835
+ "const": true
140836
+ }
140837
+ ]
140838
+ },
139285
140839
  "buddy": {
139286
140840
  "anyOf": [
139287
140841
  {
@@ -139973,6 +141527,16 @@
139973
141527
  }
139974
141528
  ]
139975
141529
  },
141530
+ "autoStartPaused": {
141531
+ "anyOf": [
141532
+ {
141533
+ "const": false
141534
+ },
141535
+ {
141536
+ "const": true
141537
+ }
141538
+ ]
141539
+ },
139976
141540
  "buddy": {
139977
141541
  "anyOf": [
139978
141542
  {
@@ -199270,6 +200834,16 @@
199270
200834
  }
199271
200835
  ]
199272
200836
  },
200837
+ "autoStartPaused": {
200838
+ "anyOf": [
200839
+ {
200840
+ "const": false
200841
+ },
200842
+ {
200843
+ "const": true
200844
+ }
200845
+ ]
200846
+ },
199273
200847
  "buddy": {
199274
200848
  "anyOf": [
199275
200849
  {
@@ -251633,6 +253207,7 @@
251633
253207
  "groups.sendMessage",
251634
253208
  "groups.setAutomation",
251635
253209
  "groups.setAutomationState",
253210
+ "groups.setPlaybookAutoStart",
251636
253211
  "home.feed",
251637
253212
  "home.places",
251638
253213
  "home.preferences",
@@ -251739,6 +253314,7 @@
251739
253314
  "playbooks.completeTodo",
251740
253315
  "playbooks.draftPlan",
251741
253316
  "playbooks.enroll",
253317
+ "playbooks.nudge",
251742
253318
  "playbooks.previewEnrollment",
251743
253319
  "playbooks.remove",
251744
253320
  "playbooks.respondBuddy",
@@ -252091,6 +253667,7 @@
252091
253667
  "groups.sendMessage",
252092
253668
  "groups.setAutomation",
252093
253669
  "groups.setAutomationState",
253670
+ "groups.setPlaybookAutoStart",
252094
253671
  "home.feed",
252095
253672
  "home.places",
252096
253673
  "home.preferences",
@@ -252197,6 +253774,7 @@
252197
253774
  "playbooks.completeTodo",
252198
253775
  "playbooks.draftPlan",
252199
253776
  "playbooks.enroll",
253777
+ "playbooks.nudge",
252200
253778
  "playbooks.previewEnrollment",
252201
253779
  "playbooks.remove",
252202
253780
  "playbooks.respondBuddy",