@go-labs-sg/gosh 0.1.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.
@@ -0,0 +1,2812 @@
1
+ [
2
+ {
3
+ "effects": [],
4
+ "input": "none",
5
+ "operation": "query",
6
+ "path": ["health", "status"],
7
+ "procedure": "health.status",
8
+ "requiresAuth": false,
9
+ "summary": "Check whether the GOSH API is healthy."
10
+ },
11
+ {
12
+ "effects": [],
13
+ "input": "none",
14
+ "operation": "query",
15
+ "path": ["auth", "whoami"],
16
+ "procedure": "user.getProfile",
17
+ "requiresAuth": true,
18
+ "summary": "Return the user represented by the active browser-authenticated CLI session."
19
+ },
20
+ {
21
+ "effects": [],
22
+ "input": "none",
23
+ "operation": "query",
24
+ "path": ["organization", "list"],
25
+ "procedure": "organization.listMine",
26
+ "requiresAuth": true,
27
+ "summary": "List organizations available to the current user."
28
+ },
29
+ {
30
+ "effects": [],
31
+ "input": "json",
32
+ "operation": "query",
33
+ "path": ["organization", "get"],
34
+ "procedure": "organization.getById",
35
+ "requiresAuth": true,
36
+ "summary": "Get one organization by ID or slug."
37
+ },
38
+ {
39
+ "effects": [],
40
+ "input": "json",
41
+ "operation": "query",
42
+ "path": ["organization", "members"],
43
+ "procedure": "organization.listMembers",
44
+ "requiresAuth": true,
45
+ "summary": "List an organization's members and pending invitations."
46
+ },
47
+ {
48
+ "effects": [],
49
+ "input": "json",
50
+ "operation": "query",
51
+ "path": ["event", "list"],
52
+ "procedure": "event.list",
53
+ "requiresAuth": true,
54
+ "summary": "List active events in an organization."
55
+ },
56
+ {
57
+ "effects": [],
58
+ "input": "json",
59
+ "operation": "query",
60
+ "path": ["event", "get"],
61
+ "procedure": "event.getById",
62
+ "requiresAuth": true,
63
+ "summary": "Get an event by ID or slug."
64
+ },
65
+ {
66
+ "effects": [],
67
+ "input": "json",
68
+ "operation": "query",
69
+ "path": ["event", "setup"],
70
+ "procedure": "event.getAdminSetup",
71
+ "requiresAuth": true,
72
+ "summary": "Get the organizer setup view for an event."
73
+ },
74
+ {
75
+ "effects": [],
76
+ "input": "json",
77
+ "operation": "query",
78
+ "path": ["event", "participants"],
79
+ "procedure": "event.getAdminParticipants",
80
+ "requiresAuth": true,
81
+ "summary": "Get the organizer participant view for an event."
82
+ },
83
+ {
84
+ "effects": [],
85
+ "input": "json",
86
+ "operation": "query",
87
+ "path": ["event", "stations"],
88
+ "procedure": "event.getAdminStationsWorkspace",
89
+ "requiresAuth": true,
90
+ "summary": "Get the organizer station workspace for an event."
91
+ },
92
+ {
93
+ "effects": [],
94
+ "input": "json",
95
+ "operation": "query",
96
+ "path": ["event", "teams"],
97
+ "procedure": "event.getAdminTeams",
98
+ "requiresAuth": true,
99
+ "summary": "Get the organizer teams view for an event."
100
+ },
101
+ {
102
+ "effects": [],
103
+ "input": "json",
104
+ "operation": "query",
105
+ "path": ["event", "submissions"],
106
+ "procedure": "event.listSubmissionReviewQueue",
107
+ "requiresAuth": true,
108
+ "summary": "List submissions awaiting or completing review."
109
+ },
110
+ {
111
+ "effects": ["state-change", "email", "external-write"],
112
+ "input": "json",
113
+ "operation": "mutation",
114
+ "path": ["event", "submissions", "request-image-export"],
115
+ "procedure": "event.requestSubmissionImageExport",
116
+ "requiresAuth": true,
117
+ "summary": "Queue a photo-and-video submission ZIP and email its download link when ready.",
118
+ "targetKeys": [
119
+ "id",
120
+ "memberId",
121
+ "invitationId",
122
+ "broadcastId",
123
+ "rewardId",
124
+ "submissionId",
125
+ "participantId",
126
+ "participantIds",
127
+ "missionId",
128
+ "stationId",
129
+ "teamId",
130
+ "templateId",
131
+ "eventId",
132
+ "organizationId",
133
+ "userId",
134
+ "key",
135
+ "uploadId",
136
+ "email",
137
+ "joinCode",
138
+ "slug",
139
+ "name"
140
+ ]
141
+ },
142
+ {
143
+ "effects": [],
144
+ "input": "json",
145
+ "operation": "query",
146
+ "path": ["event", "submissions", "image-exports"],
147
+ "procedure": "event.listSubmissionImageExports",
148
+ "requiresAuth": true,
149
+ "summary": "List submission media exports requested by the current user."
150
+ },
151
+ {
152
+ "effects": [],
153
+ "input": "json",
154
+ "operation": "mutation",
155
+ "path": ["event", "submissions", "get-image-export-download"],
156
+ "procedure": "event.getSubmissionImageExportDownload",
157
+ "requiresAuth": true,
158
+ "summary": "Get the download link for a completed submission media export.",
159
+ "targetKeys": [
160
+ "id",
161
+ "memberId",
162
+ "invitationId",
163
+ "broadcastId",
164
+ "rewardId",
165
+ "submissionId",
166
+ "participantId",
167
+ "participantIds",
168
+ "missionId",
169
+ "stationId",
170
+ "teamId",
171
+ "templateId",
172
+ "eventId",
173
+ "organizationId",
174
+ "userId",
175
+ "key",
176
+ "uploadId",
177
+ "email",
178
+ "joinCode",
179
+ "slug",
180
+ "name"
181
+ ]
182
+ },
183
+ {
184
+ "effects": [],
185
+ "input": "json",
186
+ "operation": "query",
187
+ "path": ["event", "analytics"],
188
+ "procedure": "event.listCompletionAnalytics",
189
+ "requiresAuth": true,
190
+ "summary": "List event completion analytics."
191
+ },
192
+ {
193
+ "effects": [],
194
+ "input": "json",
195
+ "operation": "query",
196
+ "path": ["event", "activity"],
197
+ "procedure": "event.listActivityTimeline",
198
+ "requiresAuth": true,
199
+ "summary": "List an event's activity timeline."
200
+ },
201
+ {
202
+ "effects": [],
203
+ "input": "json",
204
+ "operation": "query",
205
+ "path": ["event", "broadcasts"],
206
+ "procedure": "event.listBroadcasts",
207
+ "requiresAuth": true,
208
+ "summary": "List live-operations broadcasts for an event."
209
+ },
210
+ {
211
+ "effects": [],
212
+ "input": "json",
213
+ "operation": "query",
214
+ "path": ["event", "rewards"],
215
+ "procedure": "event.listRewards",
216
+ "requiresAuth": true,
217
+ "summary": "List rewards configured for an event."
218
+ },
219
+ {
220
+ "effects": [],
221
+ "input": "json",
222
+ "operation": "query",
223
+ "path": ["event", "score-adjustments"],
224
+ "procedure": "event.listScoreAdjustments",
225
+ "requiresAuth": true,
226
+ "summary": "List score adjustments for an event."
227
+ },
228
+ {
229
+ "effects": [],
230
+ "input": "json",
231
+ "operation": "query",
232
+ "path": ["event", "versions"],
233
+ "procedure": "event.listEventVersions",
234
+ "requiresAuth": true,
235
+ "summary": "List saved versions of an event."
236
+ },
237
+ {
238
+ "effects": [],
239
+ "input": "json",
240
+ "operation": "query",
241
+ "path": ["event", "results-export"],
242
+ "procedure": "event.listResultsExport",
243
+ "requiresAuth": true,
244
+ "summary": "Return event results in a machine-readable export shape."
245
+ },
246
+ {
247
+ "effects": ["state-change"],
248
+ "input": "json",
249
+ "operation": "mutation",
250
+ "path": ["event", "create"],
251
+ "procedure": "event.create",
252
+ "requiresAuth": true,
253
+ "summary": "Create an event.",
254
+ "targetKeys": ["organizationId", "name"]
255
+ },
256
+ {
257
+ "effects": ["state-change"],
258
+ "input": "json",
259
+ "operation": "mutation",
260
+ "path": ["event", "create-from-template"],
261
+ "procedure": "event.createFromTemplate",
262
+ "requiresAuth": true,
263
+ "summary": "Create an event from a template.",
264
+ "targetKeys": ["organizationId", "templateId"]
265
+ },
266
+ {
267
+ "effects": ["state-change"],
268
+ "input": "json",
269
+ "operation": "mutation",
270
+ "path": ["event", "update"],
271
+ "procedure": "event.update",
272
+ "requiresAuth": true,
273
+ "summary": "Update event details.",
274
+ "targetKeys": [
275
+ "id",
276
+ "memberId",
277
+ "invitationId",
278
+ "broadcastId",
279
+ "rewardId",
280
+ "submissionId",
281
+ "participantId",
282
+ "participantIds",
283
+ "missionId",
284
+ "stationId",
285
+ "teamId",
286
+ "templateId",
287
+ "eventId",
288
+ "organizationId",
289
+ "userId",
290
+ "key",
291
+ "uploadId",
292
+ "email",
293
+ "joinCode",
294
+ "slug",
295
+ "name"
296
+ ]
297
+ },
298
+ {
299
+ "effects": ["state-change"],
300
+ "input": "json",
301
+ "operation": "mutation",
302
+ "path": ["event", "update-status"],
303
+ "procedure": "event.updateStatus",
304
+ "requiresAuth": true,
305
+ "summary": "Change an event's lifecycle status.",
306
+ "targetKeys": [
307
+ "id",
308
+ "memberId",
309
+ "invitationId",
310
+ "broadcastId",
311
+ "rewardId",
312
+ "submissionId",
313
+ "participantId",
314
+ "participantIds",
315
+ "missionId",
316
+ "stationId",
317
+ "teamId",
318
+ "templateId",
319
+ "eventId",
320
+ "organizationId",
321
+ "userId",
322
+ "key",
323
+ "uploadId",
324
+ "email",
325
+ "joinCode",
326
+ "slug",
327
+ "name"
328
+ ]
329
+ },
330
+ {
331
+ "effects": ["state-change", "email", "external-write"],
332
+ "input": "json",
333
+ "operation": "mutation",
334
+ "path": ["event", "add-participant"],
335
+ "procedure": "event.addParticipant",
336
+ "requiresAuth": true,
337
+ "summary": "Add one participant to an event.",
338
+ "targetKeys": [
339
+ "id",
340
+ "memberId",
341
+ "invitationId",
342
+ "broadcastId",
343
+ "rewardId",
344
+ "submissionId",
345
+ "participantId",
346
+ "participantIds",
347
+ "missionId",
348
+ "stationId",
349
+ "teamId",
350
+ "templateId",
351
+ "eventId",
352
+ "organizationId",
353
+ "userId",
354
+ "key",
355
+ "uploadId",
356
+ "email",
357
+ "joinCode",
358
+ "slug",
359
+ "name"
360
+ ]
361
+ },
362
+ {
363
+ "effects": ["state-change", "email", "external-write"],
364
+ "input": "json",
365
+ "operation": "mutation",
366
+ "path": ["event", "add-participants"],
367
+ "procedure": "event.addParticipants",
368
+ "requiresAuth": true,
369
+ "summary": "Add multiple participants to an event.",
370
+ "targetKeys": [
371
+ "id",
372
+ "memberId",
373
+ "invitationId",
374
+ "broadcastId",
375
+ "rewardId",
376
+ "submissionId",
377
+ "participantId",
378
+ "participantIds",
379
+ "missionId",
380
+ "stationId",
381
+ "teamId",
382
+ "templateId",
383
+ "eventId",
384
+ "organizationId",
385
+ "userId",
386
+ "key",
387
+ "uploadId",
388
+ "email",
389
+ "joinCode",
390
+ "slug",
391
+ "name"
392
+ ]
393
+ },
394
+ {
395
+ "effects": ["state-change", "delete"],
396
+ "input": "json",
397
+ "operation": "mutation",
398
+ "path": ["event", "delete-participants"],
399
+ "procedure": "event.deleteParticipants",
400
+ "requiresAuth": true,
401
+ "summary": "Delete participants from an event.",
402
+ "targetKeys": [
403
+ "id",
404
+ "memberId",
405
+ "invitationId",
406
+ "broadcastId",
407
+ "rewardId",
408
+ "submissionId",
409
+ "participantId",
410
+ "participantIds",
411
+ "missionId",
412
+ "stationId",
413
+ "teamId",
414
+ "templateId",
415
+ "eventId",
416
+ "organizationId",
417
+ "userId",
418
+ "key",
419
+ "uploadId",
420
+ "email",
421
+ "joinCode",
422
+ "slug",
423
+ "name"
424
+ ]
425
+ },
426
+ {
427
+ "effects": ["state-change", "email", "external-write"],
428
+ "input": "json",
429
+ "operation": "mutation",
430
+ "path": ["event", "send-participant-magic-link"],
431
+ "procedure": "event.sendParticipantMagicLink",
432
+ "requiresAuth": true,
433
+ "summary": "Send one participant login link.",
434
+ "targetKeys": [
435
+ "id",
436
+ "memberId",
437
+ "invitationId",
438
+ "broadcastId",
439
+ "rewardId",
440
+ "submissionId",
441
+ "participantId",
442
+ "participantIds",
443
+ "missionId",
444
+ "stationId",
445
+ "teamId",
446
+ "templateId",
447
+ "eventId",
448
+ "organizationId",
449
+ "userId",
450
+ "key",
451
+ "uploadId",
452
+ "email",
453
+ "joinCode",
454
+ "slug",
455
+ "name"
456
+ ]
457
+ },
458
+ {
459
+ "effects": ["state-change", "email", "external-write"],
460
+ "input": "json",
461
+ "operation": "mutation",
462
+ "path": ["event", "send-participant-magic-links"],
463
+ "procedure": "event.sendParticipantMagicLinks",
464
+ "requiresAuth": true,
465
+ "summary": "Send participant login links in bulk.",
466
+ "targetKeys": [
467
+ "id",
468
+ "memberId",
469
+ "invitationId",
470
+ "broadcastId",
471
+ "rewardId",
472
+ "submissionId",
473
+ "participantId",
474
+ "participantIds",
475
+ "missionId",
476
+ "stationId",
477
+ "teamId",
478
+ "templateId",
479
+ "eventId",
480
+ "organizationId",
481
+ "userId",
482
+ "key",
483
+ "uploadId",
484
+ "email",
485
+ "joinCode",
486
+ "slug",
487
+ "name"
488
+ ]
489
+ },
490
+ {
491
+ "effects": ["state-change"],
492
+ "input": "json",
493
+ "operation": "mutation",
494
+ "path": ["event", "upsert-collaborator"],
495
+ "procedure": "event.upsertCollaborator",
496
+ "requiresAuth": true,
497
+ "summary": "Create or update an event collaborator.",
498
+ "targetKeys": [
499
+ "id",
500
+ "memberId",
501
+ "invitationId",
502
+ "broadcastId",
503
+ "rewardId",
504
+ "submissionId",
505
+ "participantId",
506
+ "participantIds",
507
+ "missionId",
508
+ "stationId",
509
+ "teamId",
510
+ "templateId",
511
+ "eventId",
512
+ "organizationId",
513
+ "userId",
514
+ "key",
515
+ "uploadId",
516
+ "email",
517
+ "joinCode",
518
+ "slug",
519
+ "name"
520
+ ]
521
+ },
522
+ {
523
+ "effects": ["state-change", "delete"],
524
+ "input": "json",
525
+ "operation": "mutation",
526
+ "path": ["event", "remove-collaborator"],
527
+ "procedure": "event.removeCollaborator",
528
+ "requiresAuth": true,
529
+ "summary": "Remove an event collaborator.",
530
+ "targetKeys": [
531
+ "id",
532
+ "memberId",
533
+ "invitationId",
534
+ "broadcastId",
535
+ "rewardId",
536
+ "submissionId",
537
+ "participantId",
538
+ "participantIds",
539
+ "missionId",
540
+ "stationId",
541
+ "teamId",
542
+ "templateId",
543
+ "eventId",
544
+ "organizationId",
545
+ "userId",
546
+ "key",
547
+ "uploadId",
548
+ "email",
549
+ "joinCode",
550
+ "slug",
551
+ "name"
552
+ ]
553
+ },
554
+ {
555
+ "effects": ["state-change"],
556
+ "input": "json",
557
+ "operation": "mutation",
558
+ "path": ["event", "create-version"],
559
+ "procedure": "event.createEventVersion",
560
+ "requiresAuth": true,
561
+ "summary": "Save an event version snapshot.",
562
+ "targetKeys": [
563
+ "id",
564
+ "memberId",
565
+ "invitationId",
566
+ "broadcastId",
567
+ "rewardId",
568
+ "submissionId",
569
+ "participantId",
570
+ "participantIds",
571
+ "missionId",
572
+ "stationId",
573
+ "teamId",
574
+ "templateId",
575
+ "eventId",
576
+ "organizationId",
577
+ "userId",
578
+ "key",
579
+ "uploadId",
580
+ "email",
581
+ "joinCode",
582
+ "slug",
583
+ "name"
584
+ ]
585
+ },
586
+ {
587
+ "effects": ["state-change"],
588
+ "input": "json",
589
+ "operation": "mutation",
590
+ "path": ["event", "rollback-version"],
591
+ "procedure": "event.rollbackEventVersion",
592
+ "requiresAuth": true,
593
+ "summary": "Roll an event back to a saved version.",
594
+ "targetKeys": [
595
+ "id",
596
+ "memberId",
597
+ "invitationId",
598
+ "broadcastId",
599
+ "rewardId",
600
+ "submissionId",
601
+ "participantId",
602
+ "participantIds",
603
+ "missionId",
604
+ "stationId",
605
+ "teamId",
606
+ "templateId",
607
+ "eventId",
608
+ "organizationId",
609
+ "userId",
610
+ "key",
611
+ "uploadId",
612
+ "email",
613
+ "joinCode",
614
+ "slug",
615
+ "name"
616
+ ]
617
+ },
618
+ {
619
+ "effects": ["state-change"],
620
+ "input": "json",
621
+ "operation": "mutation",
622
+ "path": ["station", "create"],
623
+ "procedure": "event.createStation",
624
+ "requiresAuth": true,
625
+ "summary": "Create a station in an event.",
626
+ "targetKeys": [
627
+ "id",
628
+ "memberId",
629
+ "invitationId",
630
+ "broadcastId",
631
+ "rewardId",
632
+ "submissionId",
633
+ "participantId",
634
+ "participantIds",
635
+ "missionId",
636
+ "stationId",
637
+ "teamId",
638
+ "templateId",
639
+ "eventId",
640
+ "organizationId",
641
+ "userId",
642
+ "key",
643
+ "uploadId",
644
+ "email",
645
+ "joinCode",
646
+ "slug",
647
+ "name"
648
+ ]
649
+ },
650
+ {
651
+ "effects": ["state-change"],
652
+ "input": "json",
653
+ "operation": "mutation",
654
+ "path": ["station", "update"],
655
+ "procedure": "event.updateStation",
656
+ "requiresAuth": true,
657
+ "summary": "Update a station.",
658
+ "targetKeys": [
659
+ "id",
660
+ "memberId",
661
+ "invitationId",
662
+ "broadcastId",
663
+ "rewardId",
664
+ "submissionId",
665
+ "participantId",
666
+ "participantIds",
667
+ "missionId",
668
+ "stationId",
669
+ "teamId",
670
+ "templateId",
671
+ "eventId",
672
+ "organizationId",
673
+ "userId",
674
+ "key",
675
+ "uploadId",
676
+ "email",
677
+ "joinCode",
678
+ "slug",
679
+ "name"
680
+ ]
681
+ },
682
+ {
683
+ "effects": ["state-change"],
684
+ "input": "json",
685
+ "operation": "mutation",
686
+ "path": ["station", "clone"],
687
+ "procedure": "event.cloneStation",
688
+ "requiresAuth": true,
689
+ "summary": "Clone a station and its missions.",
690
+ "targetKeys": [
691
+ "id",
692
+ "memberId",
693
+ "invitationId",
694
+ "broadcastId",
695
+ "rewardId",
696
+ "submissionId",
697
+ "participantId",
698
+ "participantIds",
699
+ "missionId",
700
+ "stationId",
701
+ "teamId",
702
+ "templateId",
703
+ "eventId",
704
+ "organizationId",
705
+ "userId",
706
+ "key",
707
+ "uploadId",
708
+ "email",
709
+ "joinCode",
710
+ "slug",
711
+ "name"
712
+ ]
713
+ },
714
+ {
715
+ "effects": ["state-change", "delete"],
716
+ "input": "json",
717
+ "operation": "mutation",
718
+ "path": ["station", "archive"],
719
+ "procedure": "event.archiveStation",
720
+ "requiresAuth": true,
721
+ "summary": "Archive a station.",
722
+ "targetKeys": [
723
+ "id",
724
+ "memberId",
725
+ "invitationId",
726
+ "broadcastId",
727
+ "rewardId",
728
+ "submissionId",
729
+ "participantId",
730
+ "participantIds",
731
+ "missionId",
732
+ "stationId",
733
+ "teamId",
734
+ "templateId",
735
+ "eventId",
736
+ "organizationId",
737
+ "userId",
738
+ "key",
739
+ "uploadId",
740
+ "email",
741
+ "joinCode",
742
+ "slug",
743
+ "name"
744
+ ]
745
+ },
746
+ {
747
+ "effects": ["state-change"],
748
+ "input": "json",
749
+ "operation": "mutation",
750
+ "path": ["station", "reorder"],
751
+ "procedure": "event.reorderStations",
752
+ "requiresAuth": true,
753
+ "summary": "Reorder an event's stations.",
754
+ "targetKeys": [
755
+ "id",
756
+ "memberId",
757
+ "invitationId",
758
+ "broadcastId",
759
+ "rewardId",
760
+ "submissionId",
761
+ "participantId",
762
+ "participantIds",
763
+ "missionId",
764
+ "stationId",
765
+ "teamId",
766
+ "templateId",
767
+ "eventId",
768
+ "organizationId",
769
+ "userId",
770
+ "key",
771
+ "uploadId",
772
+ "email",
773
+ "joinCode",
774
+ "slug",
775
+ "name"
776
+ ]
777
+ },
778
+ {
779
+ "effects": ["state-change"],
780
+ "input": "json",
781
+ "operation": "mutation",
782
+ "path": ["mission", "create"],
783
+ "procedure": "event.createMission",
784
+ "requiresAuth": true,
785
+ "summary": "Create a mission in a station.",
786
+ "targetKeys": [
787
+ "id",
788
+ "memberId",
789
+ "invitationId",
790
+ "broadcastId",
791
+ "rewardId",
792
+ "submissionId",
793
+ "participantId",
794
+ "participantIds",
795
+ "missionId",
796
+ "stationId",
797
+ "teamId",
798
+ "templateId",
799
+ "eventId",
800
+ "organizationId",
801
+ "userId",
802
+ "key",
803
+ "uploadId",
804
+ "email",
805
+ "joinCode",
806
+ "slug",
807
+ "name"
808
+ ]
809
+ },
810
+ {
811
+ "effects": ["state-change"],
812
+ "input": "json",
813
+ "operation": "mutation",
814
+ "path": ["mission", "update"],
815
+ "procedure": "event.updateMission",
816
+ "requiresAuth": true,
817
+ "summary": "Update a mission.",
818
+ "targetKeys": [
819
+ "id",
820
+ "memberId",
821
+ "invitationId",
822
+ "broadcastId",
823
+ "rewardId",
824
+ "submissionId",
825
+ "participantId",
826
+ "participantIds",
827
+ "missionId",
828
+ "stationId",
829
+ "teamId",
830
+ "templateId",
831
+ "eventId",
832
+ "organizationId",
833
+ "userId",
834
+ "key",
835
+ "uploadId",
836
+ "email",
837
+ "joinCode",
838
+ "slug",
839
+ "name"
840
+ ]
841
+ },
842
+ {
843
+ "effects": ["state-change", "delete"],
844
+ "input": "json",
845
+ "operation": "mutation",
846
+ "path": ["mission", "archive"],
847
+ "procedure": "event.archiveMission",
848
+ "requiresAuth": true,
849
+ "summary": "Archive a mission.",
850
+ "targetKeys": [
851
+ "id",
852
+ "memberId",
853
+ "invitationId",
854
+ "broadcastId",
855
+ "rewardId",
856
+ "submissionId",
857
+ "participantId",
858
+ "participantIds",
859
+ "missionId",
860
+ "stationId",
861
+ "teamId",
862
+ "templateId",
863
+ "eventId",
864
+ "organizationId",
865
+ "userId",
866
+ "key",
867
+ "uploadId",
868
+ "email",
869
+ "joinCode",
870
+ "slug",
871
+ "name"
872
+ ]
873
+ },
874
+ {
875
+ "effects": ["state-change"],
876
+ "input": "json",
877
+ "operation": "mutation",
878
+ "path": ["mission", "reorder"],
879
+ "procedure": "event.reorderMissions",
880
+ "requiresAuth": true,
881
+ "summary": "Reorder missions within a station.",
882
+ "targetKeys": [
883
+ "id",
884
+ "memberId",
885
+ "invitationId",
886
+ "broadcastId",
887
+ "rewardId",
888
+ "submissionId",
889
+ "participantId",
890
+ "participantIds",
891
+ "missionId",
892
+ "stationId",
893
+ "teamId",
894
+ "templateId",
895
+ "eventId",
896
+ "organizationId",
897
+ "userId",
898
+ "key",
899
+ "uploadId",
900
+ "email",
901
+ "joinCode",
902
+ "slug",
903
+ "name"
904
+ ]
905
+ },
906
+ {
907
+ "effects": [],
908
+ "input": "json",
909
+ "operation": "query",
910
+ "path": ["team", "list"],
911
+ "procedure": "team.list",
912
+ "requiresAuth": true,
913
+ "summary": "List teams and their current members."
914
+ },
915
+ {
916
+ "effects": ["state-change"],
917
+ "input": "json",
918
+ "operation": "mutation",
919
+ "path": ["team", "create"],
920
+ "procedure": "team.create",
921
+ "requiresAuth": true,
922
+ "summary": "Create a team.",
923
+ "targetKeys": [
924
+ "id",
925
+ "memberId",
926
+ "invitationId",
927
+ "broadcastId",
928
+ "rewardId",
929
+ "submissionId",
930
+ "participantId",
931
+ "participantIds",
932
+ "missionId",
933
+ "stationId",
934
+ "teamId",
935
+ "templateId",
936
+ "eventId",
937
+ "organizationId",
938
+ "userId",
939
+ "key",
940
+ "uploadId",
941
+ "email",
942
+ "joinCode",
943
+ "slug",
944
+ "name"
945
+ ]
946
+ },
947
+ {
948
+ "effects": ["state-change"],
949
+ "input": "json",
950
+ "operation": "mutation",
951
+ "path": ["team", "update"],
952
+ "procedure": "team.update",
953
+ "requiresAuth": true,
954
+ "summary": "Update a team.",
955
+ "targetKeys": [
956
+ "id",
957
+ "memberId",
958
+ "invitationId",
959
+ "broadcastId",
960
+ "rewardId",
961
+ "submissionId",
962
+ "participantId",
963
+ "participantIds",
964
+ "missionId",
965
+ "stationId",
966
+ "teamId",
967
+ "templateId",
968
+ "eventId",
969
+ "organizationId",
970
+ "userId",
971
+ "key",
972
+ "uploadId",
973
+ "email",
974
+ "joinCode",
975
+ "slug",
976
+ "name"
977
+ ]
978
+ },
979
+ {
980
+ "effects": ["state-change"],
981
+ "input": "json",
982
+ "operation": "mutation",
983
+ "path": ["team", "assign-member"],
984
+ "procedure": "team.assignMember",
985
+ "requiresAuth": true,
986
+ "summary": "Assign an event player to a team.",
987
+ "targetKeys": [
988
+ "id",
989
+ "memberId",
990
+ "invitationId",
991
+ "broadcastId",
992
+ "rewardId",
993
+ "submissionId",
994
+ "participantId",
995
+ "participantIds",
996
+ "missionId",
997
+ "stationId",
998
+ "teamId",
999
+ "templateId",
1000
+ "eventId",
1001
+ "organizationId",
1002
+ "userId",
1003
+ "key",
1004
+ "uploadId",
1005
+ "email",
1006
+ "joinCode",
1007
+ "slug",
1008
+ "name"
1009
+ ]
1010
+ },
1011
+ {
1012
+ "effects": ["state-change", "delete"],
1013
+ "input": "json",
1014
+ "operation": "mutation",
1015
+ "path": ["team", "remove-member"],
1016
+ "procedure": "team.removeMember",
1017
+ "requiresAuth": true,
1018
+ "summary": "Remove a member from a team.",
1019
+ "targetKeys": [
1020
+ "id",
1021
+ "memberId",
1022
+ "invitationId",
1023
+ "broadcastId",
1024
+ "rewardId",
1025
+ "submissionId",
1026
+ "participantId",
1027
+ "participantIds",
1028
+ "missionId",
1029
+ "stationId",
1030
+ "teamId",
1031
+ "templateId",
1032
+ "eventId",
1033
+ "organizationId",
1034
+ "userId",
1035
+ "key",
1036
+ "uploadId",
1037
+ "email",
1038
+ "joinCode",
1039
+ "slug",
1040
+ "name"
1041
+ ]
1042
+ },
1043
+ {
1044
+ "effects": ["state-change"],
1045
+ "input": "json",
1046
+ "operation": "mutation",
1047
+ "path": ["team", "set-play-mode"],
1048
+ "procedure": "team.setPlayMode",
1049
+ "requiresAuth": true,
1050
+ "summary": "Change an event between individual and team play.",
1051
+ "targetKeys": [
1052
+ "id",
1053
+ "memberId",
1054
+ "invitationId",
1055
+ "broadcastId",
1056
+ "rewardId",
1057
+ "submissionId",
1058
+ "participantId",
1059
+ "participantIds",
1060
+ "missionId",
1061
+ "stationId",
1062
+ "teamId",
1063
+ "templateId",
1064
+ "eventId",
1065
+ "organizationId",
1066
+ "userId",
1067
+ "key",
1068
+ "uploadId",
1069
+ "email",
1070
+ "joinCode",
1071
+ "slug",
1072
+ "name"
1073
+ ]
1074
+ },
1075
+ {
1076
+ "effects": ["state-change"],
1077
+ "input": "json",
1078
+ "operation": "mutation",
1079
+ "path": ["team", "set-submission-access"],
1080
+ "procedure": "team.setSubmissionAccess",
1081
+ "requiresAuth": true,
1082
+ "summary": "Change who can submit missions in team play.",
1083
+ "targetKeys": [
1084
+ "id",
1085
+ "memberId",
1086
+ "invitationId",
1087
+ "broadcastId",
1088
+ "rewardId",
1089
+ "submissionId",
1090
+ "participantId",
1091
+ "participantIds",
1092
+ "missionId",
1093
+ "stationId",
1094
+ "teamId",
1095
+ "templateId",
1096
+ "eventId",
1097
+ "organizationId",
1098
+ "userId",
1099
+ "key",
1100
+ "uploadId",
1101
+ "email",
1102
+ "joinCode",
1103
+ "slug",
1104
+ "name"
1105
+ ]
1106
+ },
1107
+ {
1108
+ "effects": [],
1109
+ "input": "json",
1110
+ "operation": "query",
1111
+ "path": ["template", "list"],
1112
+ "procedure": "template.list",
1113
+ "requiresAuth": true,
1114
+ "summary": "List system and organization templates."
1115
+ },
1116
+ {
1117
+ "effects": [],
1118
+ "input": "json",
1119
+ "operation": "query",
1120
+ "path": ["template", "get"],
1121
+ "procedure": "template.getById",
1122
+ "requiresAuth": true,
1123
+ "summary": "Get a template by ID."
1124
+ },
1125
+ {
1126
+ "effects": ["state-change"],
1127
+ "input": "json",
1128
+ "operation": "mutation",
1129
+ "path": ["template", "create"],
1130
+ "procedure": "template.create",
1131
+ "requiresAuth": true,
1132
+ "summary": "Create an organization template.",
1133
+ "targetKeys": ["organizationId", "name"]
1134
+ },
1135
+ {
1136
+ "effects": ["state-change"],
1137
+ "input": "json",
1138
+ "operation": "mutation",
1139
+ "path": ["template", "update"],
1140
+ "procedure": "template.update",
1141
+ "requiresAuth": true,
1142
+ "summary": "Replace a template's setup.",
1143
+ "targetKeys": [
1144
+ "id",
1145
+ "memberId",
1146
+ "invitationId",
1147
+ "broadcastId",
1148
+ "rewardId",
1149
+ "submissionId",
1150
+ "participantId",
1151
+ "participantIds",
1152
+ "missionId",
1153
+ "stationId",
1154
+ "teamId",
1155
+ "templateId",
1156
+ "eventId",
1157
+ "organizationId",
1158
+ "userId",
1159
+ "key",
1160
+ "uploadId",
1161
+ "email",
1162
+ "joinCode",
1163
+ "slug",
1164
+ "name"
1165
+ ]
1166
+ },
1167
+ {
1168
+ "effects": ["state-change"],
1169
+ "input": "json",
1170
+ "operation": "mutation",
1171
+ "path": ["template", "update-metadata"],
1172
+ "procedure": "template.updateMetadata",
1173
+ "requiresAuth": true,
1174
+ "summary": "Update template metadata.",
1175
+ "targetKeys": [
1176
+ "id",
1177
+ "memberId",
1178
+ "invitationId",
1179
+ "broadcastId",
1180
+ "rewardId",
1181
+ "submissionId",
1182
+ "participantId",
1183
+ "participantIds",
1184
+ "missionId",
1185
+ "stationId",
1186
+ "teamId",
1187
+ "templateId",
1188
+ "eventId",
1189
+ "organizationId",
1190
+ "userId",
1191
+ "key",
1192
+ "uploadId",
1193
+ "email",
1194
+ "joinCode",
1195
+ "slug",
1196
+ "name"
1197
+ ]
1198
+ },
1199
+ {
1200
+ "effects": ["state-change", "delete"],
1201
+ "input": "json",
1202
+ "operation": "mutation",
1203
+ "path": ["template", "delete"],
1204
+ "procedure": "template.delete",
1205
+ "requiresAuth": true,
1206
+ "summary": "Delete a template.",
1207
+ "targetKeys": [
1208
+ "id",
1209
+ "memberId",
1210
+ "invitationId",
1211
+ "broadcastId",
1212
+ "rewardId",
1213
+ "submissionId",
1214
+ "participantId",
1215
+ "participantIds",
1216
+ "missionId",
1217
+ "stationId",
1218
+ "teamId",
1219
+ "templateId",
1220
+ "eventId",
1221
+ "organizationId",
1222
+ "userId",
1223
+ "key",
1224
+ "uploadId",
1225
+ "email",
1226
+ "joinCode",
1227
+ "slug",
1228
+ "name"
1229
+ ]
1230
+ },
1231
+ {
1232
+ "effects": ["state-change", "external-write"],
1233
+ "input": "json",
1234
+ "operation": "mutation",
1235
+ "path": ["broadcast", "create"],
1236
+ "procedure": "event.createBroadcast",
1237
+ "requiresAuth": true,
1238
+ "summary": "Create or schedule an event broadcast.",
1239
+ "targetKeys": [
1240
+ "id",
1241
+ "memberId",
1242
+ "invitationId",
1243
+ "broadcastId",
1244
+ "rewardId",
1245
+ "submissionId",
1246
+ "participantId",
1247
+ "participantIds",
1248
+ "missionId",
1249
+ "stationId",
1250
+ "teamId",
1251
+ "templateId",
1252
+ "eventId",
1253
+ "organizationId",
1254
+ "userId",
1255
+ "key",
1256
+ "uploadId",
1257
+ "email",
1258
+ "joinCode",
1259
+ "slug",
1260
+ "name"
1261
+ ]
1262
+ },
1263
+ {
1264
+ "effects": ["state-change"],
1265
+ "input": "json",
1266
+ "operation": "mutation",
1267
+ "path": ["broadcast", "cancel"],
1268
+ "procedure": "event.cancelBroadcast",
1269
+ "requiresAuth": true,
1270
+ "summary": "Cancel a scheduled broadcast.",
1271
+ "targetKeys": [
1272
+ "id",
1273
+ "memberId",
1274
+ "invitationId",
1275
+ "broadcastId",
1276
+ "rewardId",
1277
+ "submissionId",
1278
+ "participantId",
1279
+ "participantIds",
1280
+ "missionId",
1281
+ "stationId",
1282
+ "teamId",
1283
+ "templateId",
1284
+ "eventId",
1285
+ "organizationId",
1286
+ "userId",
1287
+ "key",
1288
+ "uploadId",
1289
+ "email",
1290
+ "joinCode",
1291
+ "slug",
1292
+ "name"
1293
+ ]
1294
+ },
1295
+ {
1296
+ "effects": ["state-change", "delete"],
1297
+ "input": "json",
1298
+ "operation": "mutation",
1299
+ "path": ["broadcast", "delete"],
1300
+ "procedure": "event.deleteBroadcast",
1301
+ "requiresAuth": true,
1302
+ "summary": "Delete a broadcast.",
1303
+ "targetKeys": [
1304
+ "id",
1305
+ "memberId",
1306
+ "invitationId",
1307
+ "broadcastId",
1308
+ "rewardId",
1309
+ "submissionId",
1310
+ "participantId",
1311
+ "participantIds",
1312
+ "missionId",
1313
+ "stationId",
1314
+ "teamId",
1315
+ "templateId",
1316
+ "eventId",
1317
+ "organizationId",
1318
+ "userId",
1319
+ "key",
1320
+ "uploadId",
1321
+ "email",
1322
+ "joinCode",
1323
+ "slug",
1324
+ "name"
1325
+ ]
1326
+ },
1327
+ {
1328
+ "effects": ["state-change", "external-write"],
1329
+ "input": "json",
1330
+ "operation": "mutation",
1331
+ "path": ["broadcast", "deliver-due"],
1332
+ "procedure": "event.deliverDueBroadcasts",
1333
+ "requiresAuth": true,
1334
+ "summary": "Deliver broadcasts that are due now.",
1335
+ "targetKeys": [
1336
+ "id",
1337
+ "memberId",
1338
+ "invitationId",
1339
+ "broadcastId",
1340
+ "rewardId",
1341
+ "submissionId",
1342
+ "participantId",
1343
+ "participantIds",
1344
+ "missionId",
1345
+ "stationId",
1346
+ "teamId",
1347
+ "templateId",
1348
+ "eventId",
1349
+ "organizationId",
1350
+ "userId",
1351
+ "key",
1352
+ "uploadId",
1353
+ "email",
1354
+ "joinCode",
1355
+ "slug",
1356
+ "name"
1357
+ ]
1358
+ },
1359
+ {
1360
+ "effects": ["state-change"],
1361
+ "input": "json",
1362
+ "operation": "mutation",
1363
+ "path": ["reward", "create"],
1364
+ "procedure": "event.createReward",
1365
+ "requiresAuth": true,
1366
+ "summary": "Create an event reward.",
1367
+ "targetKeys": [
1368
+ "id",
1369
+ "memberId",
1370
+ "invitationId",
1371
+ "broadcastId",
1372
+ "rewardId",
1373
+ "submissionId",
1374
+ "participantId",
1375
+ "participantIds",
1376
+ "missionId",
1377
+ "stationId",
1378
+ "teamId",
1379
+ "templateId",
1380
+ "eventId",
1381
+ "organizationId",
1382
+ "userId",
1383
+ "key",
1384
+ "uploadId",
1385
+ "email",
1386
+ "joinCode",
1387
+ "slug",
1388
+ "name"
1389
+ ]
1390
+ },
1391
+ {
1392
+ "effects": ["state-change"],
1393
+ "input": "json",
1394
+ "operation": "mutation",
1395
+ "path": ["reward", "update"],
1396
+ "procedure": "event.updateReward",
1397
+ "requiresAuth": true,
1398
+ "summary": "Update an event reward.",
1399
+ "targetKeys": [
1400
+ "id",
1401
+ "memberId",
1402
+ "invitationId",
1403
+ "broadcastId",
1404
+ "rewardId",
1405
+ "submissionId",
1406
+ "participantId",
1407
+ "participantIds",
1408
+ "missionId",
1409
+ "stationId",
1410
+ "teamId",
1411
+ "templateId",
1412
+ "eventId",
1413
+ "organizationId",
1414
+ "userId",
1415
+ "key",
1416
+ "uploadId",
1417
+ "email",
1418
+ "joinCode",
1419
+ "slug",
1420
+ "name"
1421
+ ]
1422
+ },
1423
+ {
1424
+ "effects": ["state-change"],
1425
+ "input": "json",
1426
+ "operation": "mutation",
1427
+ "path": ["score", "adjust"],
1428
+ "procedure": "event.createScoreAdjustment",
1429
+ "requiresAuth": true,
1430
+ "summary": "Create a manual score adjustment.",
1431
+ "targetKeys": [
1432
+ "id",
1433
+ "memberId",
1434
+ "invitationId",
1435
+ "broadcastId",
1436
+ "rewardId",
1437
+ "submissionId",
1438
+ "participantId",
1439
+ "participantIds",
1440
+ "missionId",
1441
+ "stationId",
1442
+ "teamId",
1443
+ "templateId",
1444
+ "eventId",
1445
+ "organizationId",
1446
+ "userId",
1447
+ "key",
1448
+ "uploadId",
1449
+ "email",
1450
+ "joinCode",
1451
+ "slug",
1452
+ "name"
1453
+ ]
1454
+ },
1455
+ {
1456
+ "effects": ["state-change"],
1457
+ "input": "json",
1458
+ "operation": "mutation",
1459
+ "path": ["submission", "review"],
1460
+ "procedure": "event.reviewSubmission",
1461
+ "requiresAuth": true,
1462
+ "summary": "Review a mission submission.",
1463
+ "targetKeys": [
1464
+ "id",
1465
+ "memberId",
1466
+ "invitationId",
1467
+ "broadcastId",
1468
+ "rewardId",
1469
+ "submissionId",
1470
+ "participantId",
1471
+ "participantIds",
1472
+ "missionId",
1473
+ "stationId",
1474
+ "teamId",
1475
+ "templateId",
1476
+ "eventId",
1477
+ "organizationId",
1478
+ "userId",
1479
+ "key",
1480
+ "uploadId",
1481
+ "email",
1482
+ "joinCode",
1483
+ "slug",
1484
+ "name"
1485
+ ]
1486
+ },
1487
+ {
1488
+ "effects": ["state-change"],
1489
+ "input": "json",
1490
+ "operation": "mutation",
1491
+ "path": ["results-share", "regenerate"],
1492
+ "procedure": "event.regenerateResultsPortalShare",
1493
+ "requiresAuth": true,
1494
+ "summary": "Create a new results portal share token.",
1495
+ "targetKeys": [
1496
+ "id",
1497
+ "memberId",
1498
+ "invitationId",
1499
+ "broadcastId",
1500
+ "rewardId",
1501
+ "submissionId",
1502
+ "participantId",
1503
+ "participantIds",
1504
+ "missionId",
1505
+ "stationId",
1506
+ "teamId",
1507
+ "templateId",
1508
+ "eventId",
1509
+ "organizationId",
1510
+ "userId",
1511
+ "key",
1512
+ "uploadId",
1513
+ "email",
1514
+ "joinCode",
1515
+ "slug",
1516
+ "name"
1517
+ ]
1518
+ },
1519
+ {
1520
+ "effects": ["state-change", "delete"],
1521
+ "input": "json",
1522
+ "operation": "mutation",
1523
+ "path": ["results-share", "revoke"],
1524
+ "procedure": "event.revokeResultsPortalShare",
1525
+ "requiresAuth": true,
1526
+ "summary": "Revoke the current results portal share token.",
1527
+ "targetKeys": [
1528
+ "id",
1529
+ "memberId",
1530
+ "invitationId",
1531
+ "broadcastId",
1532
+ "rewardId",
1533
+ "submissionId",
1534
+ "participantId",
1535
+ "participantIds",
1536
+ "missionId",
1537
+ "stationId",
1538
+ "teamId",
1539
+ "templateId",
1540
+ "eventId",
1541
+ "organizationId",
1542
+ "userId",
1543
+ "key",
1544
+ "uploadId",
1545
+ "email",
1546
+ "joinCode",
1547
+ "slug",
1548
+ "name"
1549
+ ]
1550
+ },
1551
+ {
1552
+ "effects": [],
1553
+ "input": "json",
1554
+ "operation": "query",
1555
+ "path": ["event", "analytics-shell"],
1556
+ "procedure": "event.getAdminAnalyticsShell",
1557
+ "requiresAuth": true,
1558
+ "summary": "Get the organizer analytics shell."
1559
+ },
1560
+ {
1561
+ "effects": [],
1562
+ "input": "json",
1563
+ "operation": "query",
1564
+ "path": ["event", "collaborators"],
1565
+ "procedure": "event.getAdminCollaborators",
1566
+ "requiresAuth": true,
1567
+ "summary": "Get event collaborators and access details."
1568
+ },
1569
+ {
1570
+ "effects": [],
1571
+ "input": "json",
1572
+ "operation": "query",
1573
+ "path": ["event", "header"],
1574
+ "procedure": "event.getAdminEventHeader",
1575
+ "requiresAuth": true,
1576
+ "summary": "Get the organizer event header."
1577
+ },
1578
+ {
1579
+ "effects": [],
1580
+ "input": "json",
1581
+ "operation": "query",
1582
+ "path": ["event", "launch"],
1583
+ "procedure": "event.getAdminLaunch",
1584
+ "requiresAuth": true,
1585
+ "summary": "Get event launch readiness and state."
1586
+ },
1587
+ {
1588
+ "effects": [],
1589
+ "input": "json",
1590
+ "operation": "query",
1591
+ "path": ["event", "leaderboard"],
1592
+ "procedure": "event.getAdminLeaderboard",
1593
+ "requiresAuth": true,
1594
+ "summary": "Get the staff leaderboard."
1595
+ },
1596
+ {
1597
+ "effects": [],
1598
+ "input": "json",
1599
+ "operation": "query",
1600
+ "path": ["mission", "shell"],
1601
+ "procedure": "event.getAdminMissionShell",
1602
+ "requiresAuth": true,
1603
+ "summary": "Get mission editor data."
1604
+ },
1605
+ {
1606
+ "effects": [],
1607
+ "input": "json",
1608
+ "operation": "query",
1609
+ "path": ["event", "participant-import"],
1610
+ "procedure": "event.getAdminParticipantImport",
1611
+ "requiresAuth": true,
1612
+ "summary": "Get participant import context."
1613
+ },
1614
+ {
1615
+ "effects": [],
1616
+ "input": "json",
1617
+ "operation": "query",
1618
+ "path": ["event", "preview"],
1619
+ "procedure": "event.getAdminPreview",
1620
+ "requiresAuth": true,
1621
+ "summary": "Get the organizer event preview."
1622
+ },
1623
+ {
1624
+ "effects": [],
1625
+ "input": "json",
1626
+ "operation": "query",
1627
+ "path": ["station", "create-context"],
1628
+ "procedure": "event.getAdminStationCreate",
1629
+ "requiresAuth": true,
1630
+ "summary": "Get station creation context."
1631
+ },
1632
+ {
1633
+ "effects": [],
1634
+ "input": "json",
1635
+ "operation": "query",
1636
+ "path": ["station", "editor"],
1637
+ "procedure": "event.getAdminStationEditor",
1638
+ "requiresAuth": true,
1639
+ "summary": "Get station editor data."
1640
+ },
1641
+ {
1642
+ "effects": [],
1643
+ "input": "json",
1644
+ "operation": "query",
1645
+ "path": ["submission", "filters"],
1646
+ "procedure": "event.getAdminSubmissionFilters",
1647
+ "requiresAuth": true,
1648
+ "summary": "Get submission review filter values."
1649
+ },
1650
+ {
1651
+ "effects": [],
1652
+ "input": "json",
1653
+ "operation": "query",
1654
+ "path": ["results-share", "get"],
1655
+ "procedure": "event.getResultsPortalShare",
1656
+ "requiresAuth": true,
1657
+ "summary": "Get the current results portal share."
1658
+ },
1659
+ {
1660
+ "effects": ["state-change"],
1661
+ "input": "json",
1662
+ "operation": "mutation",
1663
+ "path": ["event", "update-access"],
1664
+ "procedure": "event.updateAccess",
1665
+ "requiresAuth": true,
1666
+ "summary": "Update event access rules.",
1667
+ "targetKeys": [
1668
+ "id",
1669
+ "memberId",
1670
+ "invitationId",
1671
+ "broadcastId",
1672
+ "rewardId",
1673
+ "submissionId",
1674
+ "participantId",
1675
+ "participantIds",
1676
+ "missionId",
1677
+ "stationId",
1678
+ "teamId",
1679
+ "templateId",
1680
+ "eventId",
1681
+ "organizationId",
1682
+ "userId",
1683
+ "key",
1684
+ "uploadId",
1685
+ "email",
1686
+ "joinCode",
1687
+ "slug",
1688
+ "name"
1689
+ ]
1690
+ },
1691
+ {
1692
+ "effects": ["state-change"],
1693
+ "input": "json",
1694
+ "operation": "mutation",
1695
+ "path": ["event", "update-branding"],
1696
+ "procedure": "event.updateBranding",
1697
+ "requiresAuth": true,
1698
+ "summary": "Update event branding.",
1699
+ "targetKeys": [
1700
+ "id",
1701
+ "memberId",
1702
+ "invitationId",
1703
+ "broadcastId",
1704
+ "rewardId",
1705
+ "submissionId",
1706
+ "participantId",
1707
+ "participantIds",
1708
+ "missionId",
1709
+ "stationId",
1710
+ "teamId",
1711
+ "templateId",
1712
+ "eventId",
1713
+ "organizationId",
1714
+ "userId",
1715
+ "key",
1716
+ "uploadId",
1717
+ "email",
1718
+ "joinCode",
1719
+ "slug",
1720
+ "name"
1721
+ ]
1722
+ },
1723
+ {
1724
+ "effects": ["state-change"],
1725
+ "input": "json",
1726
+ "operation": "mutation",
1727
+ "path": ["station", "update-availability"],
1728
+ "procedure": "event.updateStationAvailability",
1729
+ "requiresAuth": true,
1730
+ "summary": "Update station availability.",
1731
+ "targetKeys": [
1732
+ "id",
1733
+ "memberId",
1734
+ "invitationId",
1735
+ "broadcastId",
1736
+ "rewardId",
1737
+ "submissionId",
1738
+ "participantId",
1739
+ "participantIds",
1740
+ "missionId",
1741
+ "stationId",
1742
+ "teamId",
1743
+ "templateId",
1744
+ "eventId",
1745
+ "organizationId",
1746
+ "userId",
1747
+ "key",
1748
+ "uploadId",
1749
+ "email",
1750
+ "joinCode",
1751
+ "slug",
1752
+ "name"
1753
+ ]
1754
+ },
1755
+ {
1756
+ "effects": ["state-change"],
1757
+ "input": "json",
1758
+ "operation": "mutation",
1759
+ "path": ["station", "update-image"],
1760
+ "procedure": "event.updateStationImage",
1761
+ "requiresAuth": true,
1762
+ "summary": "Update a station image.",
1763
+ "targetKeys": [
1764
+ "id",
1765
+ "memberId",
1766
+ "invitationId",
1767
+ "broadcastId",
1768
+ "rewardId",
1769
+ "submissionId",
1770
+ "participantId",
1771
+ "participantIds",
1772
+ "missionId",
1773
+ "stationId",
1774
+ "teamId",
1775
+ "templateId",
1776
+ "eventId",
1777
+ "organizationId",
1778
+ "userId",
1779
+ "key",
1780
+ "uploadId",
1781
+ "email",
1782
+ "joinCode",
1783
+ "slug",
1784
+ "name"
1785
+ ]
1786
+ },
1787
+ {
1788
+ "effects": ["state-change"],
1789
+ "input": "json",
1790
+ "operation": "mutation",
1791
+ "path": ["station", "update-location"],
1792
+ "procedure": "event.updateStationLocation",
1793
+ "requiresAuth": true,
1794
+ "summary": "Update station location and geofence settings.",
1795
+ "targetKeys": [
1796
+ "id",
1797
+ "memberId",
1798
+ "invitationId",
1799
+ "broadcastId",
1800
+ "rewardId",
1801
+ "submissionId",
1802
+ "participantId",
1803
+ "participantIds",
1804
+ "missionId",
1805
+ "stationId",
1806
+ "teamId",
1807
+ "templateId",
1808
+ "eventId",
1809
+ "organizationId",
1810
+ "userId",
1811
+ "key",
1812
+ "uploadId",
1813
+ "email",
1814
+ "joinCode",
1815
+ "slug",
1816
+ "name"
1817
+ ]
1818
+ },
1819
+ {
1820
+ "effects": ["state-change"],
1821
+ "input": "json",
1822
+ "operation": "mutation",
1823
+ "path": ["event", "save-as-template"],
1824
+ "procedure": "event.saveAsTemplate",
1825
+ "requiresAuth": true,
1826
+ "summary": "Save an event as a template.",
1827
+ "targetKeys": [
1828
+ "id",
1829
+ "memberId",
1830
+ "invitationId",
1831
+ "broadcastId",
1832
+ "rewardId",
1833
+ "submissionId",
1834
+ "participantId",
1835
+ "participantIds",
1836
+ "missionId",
1837
+ "stationId",
1838
+ "teamId",
1839
+ "templateId",
1840
+ "eventId",
1841
+ "organizationId",
1842
+ "userId",
1843
+ "key",
1844
+ "uploadId",
1845
+ "email",
1846
+ "joinCode",
1847
+ "slug",
1848
+ "name"
1849
+ ]
1850
+ },
1851
+ {
1852
+ "effects": [],
1853
+ "input": "json",
1854
+ "operation": "query",
1855
+ "path": ["player", "event"],
1856
+ "procedure": "event.getJoinDetails",
1857
+ "requiresAuth": true,
1858
+ "summary": "Get the current player's event details."
1859
+ },
1860
+ {
1861
+ "effects": [],
1862
+ "input": "json",
1863
+ "operation": "query",
1864
+ "path": ["player", "leaderboard", "page"],
1865
+ "procedure": "event.getPaginatedPlayerLeaderboard",
1866
+ "requiresAuth": true,
1867
+ "summary": "Get a page of the player leaderboard."
1868
+ },
1869
+ {
1870
+ "effects": [],
1871
+ "input": "json",
1872
+ "operation": "query",
1873
+ "path": ["player", "leaderboard"],
1874
+ "procedure": "event.getPlayerLeaderboard",
1875
+ "requiresAuth": true,
1876
+ "summary": "Get the current player leaderboard."
1877
+ },
1878
+ {
1879
+ "effects": [],
1880
+ "input": "json",
1881
+ "operation": "query",
1882
+ "path": ["player", "map"],
1883
+ "procedure": "event.getPlayerMap",
1884
+ "requiresAuth": true,
1885
+ "summary": "Get the player event map."
1886
+ },
1887
+ {
1888
+ "effects": [],
1889
+ "input": "json",
1890
+ "operation": "query",
1891
+ "path": ["player", "shell"],
1892
+ "procedure": "event.getPlayerShell",
1893
+ "requiresAuth": true,
1894
+ "summary": "Get the player application shell."
1895
+ },
1896
+ {
1897
+ "effects": [],
1898
+ "input": "json",
1899
+ "operation": "query",
1900
+ "path": ["player", "station"],
1901
+ "procedure": "event.getPlayerStation",
1902
+ "requiresAuth": true,
1903
+ "summary": "Get a playable station."
1904
+ },
1905
+ {
1906
+ "effects": [],
1907
+ "input": "none",
1908
+ "operation": "query",
1909
+ "path": ["player", "events"],
1910
+ "procedure": "event.listJoined",
1911
+ "requiresAuth": true,
1912
+ "summary": "List events joined by the current user."
1913
+ },
1914
+ {
1915
+ "effects": [],
1916
+ "input": "json",
1917
+ "operation": "query",
1918
+ "path": ["player", "broadcasts"],
1919
+ "procedure": "event.listPlayerBroadcasts",
1920
+ "requiresAuth": true,
1921
+ "summary": "List broadcasts visible to the current player."
1922
+ },
1923
+ {
1924
+ "effects": [],
1925
+ "input": "json",
1926
+ "operation": "query",
1927
+ "path": ["player", "broadcast"],
1928
+ "procedure": "event.getPlayerBroadcast",
1929
+ "requiresAuth": true,
1930
+ "summary": "Get one broadcast visible to the current player."
1931
+ },
1932
+ {
1933
+ "effects": [],
1934
+ "input": "json",
1935
+ "operation": "query",
1936
+ "path": ["player", "rewards"],
1937
+ "procedure": "event.listPlayerRewards",
1938
+ "requiresAuth": true,
1939
+ "summary": "List rewards visible to the current player."
1940
+ },
1941
+ {
1942
+ "effects": ["state-change"],
1943
+ "input": "json",
1944
+ "operation": "mutation",
1945
+ "path": ["player", "join"],
1946
+ "procedure": "event.join",
1947
+ "requiresAuth": true,
1948
+ "summary": "Join an event as the current user.",
1949
+ "targetKeys": [
1950
+ "id",
1951
+ "memberId",
1952
+ "invitationId",
1953
+ "broadcastId",
1954
+ "rewardId",
1955
+ "submissionId",
1956
+ "participantId",
1957
+ "participantIds",
1958
+ "missionId",
1959
+ "stationId",
1960
+ "teamId",
1961
+ "templateId",
1962
+ "eventId",
1963
+ "organizationId",
1964
+ "userId",
1965
+ "key",
1966
+ "uploadId",
1967
+ "email",
1968
+ "joinCode",
1969
+ "slug",
1970
+ "name"
1971
+ ]
1972
+ },
1973
+ {
1974
+ "effects": ["state-change"],
1975
+ "input": "json",
1976
+ "operation": "mutation",
1977
+ "path": ["player", "team", "join"],
1978
+ "procedure": "team.join",
1979
+ "requiresAuth": true,
1980
+ "summary": "Join an event team.",
1981
+ "targetKeys": [
1982
+ "id",
1983
+ "memberId",
1984
+ "invitationId",
1985
+ "broadcastId",
1986
+ "rewardId",
1987
+ "submissionId",
1988
+ "participantId",
1989
+ "participantIds",
1990
+ "missionId",
1991
+ "stationId",
1992
+ "teamId",
1993
+ "templateId",
1994
+ "eventId",
1995
+ "organizationId",
1996
+ "userId",
1997
+ "key",
1998
+ "uploadId",
1999
+ "email",
2000
+ "joinCode",
2001
+ "slug",
2002
+ "name"
2003
+ ]
2004
+ },
2005
+ {
2006
+ "effects": ["state-change"],
2007
+ "input": "json",
2008
+ "operation": "mutation",
2009
+ "path": ["player", "broadcasts", "mark-read"],
2010
+ "procedure": "event.markPlayerBroadcastsRead",
2011
+ "requiresAuth": true,
2012
+ "summary": "Mark player broadcasts as read.",
2013
+ "targetKeys": [
2014
+ "id",
2015
+ "memberId",
2016
+ "invitationId",
2017
+ "broadcastId",
2018
+ "rewardId",
2019
+ "submissionId",
2020
+ "participantId",
2021
+ "participantIds",
2022
+ "missionId",
2023
+ "stationId",
2024
+ "teamId",
2025
+ "templateId",
2026
+ "eventId",
2027
+ "organizationId",
2028
+ "userId",
2029
+ "key",
2030
+ "uploadId",
2031
+ "email",
2032
+ "joinCode",
2033
+ "slug",
2034
+ "name"
2035
+ ]
2036
+ },
2037
+ {
2038
+ "effects": ["state-change"],
2039
+ "input": "json",
2040
+ "operation": "mutation",
2041
+ "path": ["player", "review"],
2042
+ "procedure": "event.submitUserReview",
2043
+ "requiresAuth": true,
2044
+ "summary": "Submit an event review.",
2045
+ "targetKeys": [
2046
+ "id",
2047
+ "memberId",
2048
+ "invitationId",
2049
+ "broadcastId",
2050
+ "rewardId",
2051
+ "submissionId",
2052
+ "participantId",
2053
+ "participantIds",
2054
+ "missionId",
2055
+ "stationId",
2056
+ "teamId",
2057
+ "templateId",
2058
+ "eventId",
2059
+ "organizationId",
2060
+ "userId",
2061
+ "key",
2062
+ "uploadId",
2063
+ "email",
2064
+ "joinCode",
2065
+ "slug",
2066
+ "name"
2067
+ ]
2068
+ },
2069
+ {
2070
+ "effects": ["state-change"],
2071
+ "input": "json",
2072
+ "operation": "mutation",
2073
+ "path": ["player", "display-name", "update"],
2074
+ "procedure": "event.updatePlayerDisplayName",
2075
+ "requiresAuth": true,
2076
+ "summary": "Update the player's display name.",
2077
+ "targetKeys": [
2078
+ "id",
2079
+ "memberId",
2080
+ "invitationId",
2081
+ "broadcastId",
2082
+ "rewardId",
2083
+ "submissionId",
2084
+ "participantId",
2085
+ "participantIds",
2086
+ "missionId",
2087
+ "stationId",
2088
+ "teamId",
2089
+ "templateId",
2090
+ "eventId",
2091
+ "organizationId",
2092
+ "userId",
2093
+ "key",
2094
+ "uploadId",
2095
+ "email",
2096
+ "joinCode",
2097
+ "slug",
2098
+ "name"
2099
+ ]
2100
+ },
2101
+ {
2102
+ "effects": [],
2103
+ "input": "json",
2104
+ "operation": "mutation",
2105
+ "path": ["player", "resolve-join-code"],
2106
+ "procedure": "event.resolveJoinCode",
2107
+ "requiresAuth": true,
2108
+ "summary": "Resolve an event or team join code.",
2109
+ "targetKeys": ["joinCode"]
2110
+ },
2111
+ {
2112
+ "effects": ["state-change"],
2113
+ "input": "json",
2114
+ "operation": "mutation",
2115
+ "path": ["player", "station-check-in"],
2116
+ "procedure": "event.createStationCheckInProof",
2117
+ "requiresAuth": true,
2118
+ "summary": "Create an expiring station check-in proof.",
2119
+ "targetKeys": [
2120
+ "id",
2121
+ "memberId",
2122
+ "invitationId",
2123
+ "broadcastId",
2124
+ "rewardId",
2125
+ "submissionId",
2126
+ "participantId",
2127
+ "participantIds",
2128
+ "missionId",
2129
+ "stationId",
2130
+ "teamId",
2131
+ "templateId",
2132
+ "eventId",
2133
+ "organizationId",
2134
+ "userId",
2135
+ "key",
2136
+ "uploadId",
2137
+ "email",
2138
+ "joinCode",
2139
+ "slug",
2140
+ "name"
2141
+ ]
2142
+ },
2143
+ {
2144
+ "effects": ["state-change"],
2145
+ "input": "json",
2146
+ "operation": "mutation",
2147
+ "path": ["player", "mission", "submit"],
2148
+ "procedure": "event.submitMission",
2149
+ "requiresAuth": true,
2150
+ "summary": "Submit a mission response.",
2151
+ "targetKeys": [
2152
+ "id",
2153
+ "memberId",
2154
+ "invitationId",
2155
+ "broadcastId",
2156
+ "rewardId",
2157
+ "submissionId",
2158
+ "participantId",
2159
+ "participantIds",
2160
+ "missionId",
2161
+ "stationId",
2162
+ "teamId",
2163
+ "templateId",
2164
+ "eventId",
2165
+ "organizationId",
2166
+ "userId",
2167
+ "key",
2168
+ "uploadId",
2169
+ "email",
2170
+ "joinCode",
2171
+ "slug",
2172
+ "name"
2173
+ ]
2174
+ },
2175
+ {
2176
+ "effects": [],
2177
+ "input": "json",
2178
+ "operation": "query",
2179
+ "path": ["public", "event-login"],
2180
+ "procedure": "event.getPublicLoginDetails",
2181
+ "requiresAuth": false,
2182
+ "summary": "Get public event login details."
2183
+ },
2184
+ {
2185
+ "effects": [],
2186
+ "input": "json",
2187
+ "operation": "query",
2188
+ "path": ["public", "results"],
2189
+ "procedure": "event.getResultsPortal",
2190
+ "requiresAuth": false,
2191
+ "summary": "Get a shared public results portal."
2192
+ },
2193
+ {
2194
+ "effects": ["email", "external-write"],
2195
+ "input": "json",
2196
+ "operation": "mutation",
2197
+ "path": ["public", "request-login-code"],
2198
+ "procedure": "event.requestLoginEmailOtp",
2199
+ "requiresAuth": false,
2200
+ "summary": "Send an event login email code.",
2201
+ "targetKeys": ["eventId", "email"]
2202
+ },
2203
+ {
2204
+ "effects": ["state-change", "external-write"],
2205
+ "input": "json",
2206
+ "operation": "mutation",
2207
+ "path": ["upload", "branding"],
2208
+ "procedure": "event.requestBrandingAssetUpload",
2209
+ "requiresAuth": true,
2210
+ "summary": "Upload an event branding asset from a local file.",
2211
+ "targetKeys": [
2212
+ "id",
2213
+ "memberId",
2214
+ "invitationId",
2215
+ "broadcastId",
2216
+ "rewardId",
2217
+ "submissionId",
2218
+ "participantId",
2219
+ "participantIds",
2220
+ "missionId",
2221
+ "stationId",
2222
+ "teamId",
2223
+ "templateId",
2224
+ "eventId",
2225
+ "organizationId",
2226
+ "userId",
2227
+ "key",
2228
+ "uploadId",
2229
+ "email",
2230
+ "joinCode",
2231
+ "slug",
2232
+ "name"
2233
+ ],
2234
+ "upload": "branding"
2235
+ },
2236
+ {
2237
+ "effects": ["state-change", "external-write"],
2238
+ "input": "json",
2239
+ "operation": "mutation",
2240
+ "path": ["upload", "setup-image"],
2241
+ "procedure": "event.requestSetupImageUpload",
2242
+ "requiresAuth": true,
2243
+ "summary": "Upload a station or mission setup image from a local file.",
2244
+ "targetKeys": [
2245
+ "id",
2246
+ "memberId",
2247
+ "invitationId",
2248
+ "broadcastId",
2249
+ "rewardId",
2250
+ "submissionId",
2251
+ "participantId",
2252
+ "participantIds",
2253
+ "missionId",
2254
+ "stationId",
2255
+ "teamId",
2256
+ "templateId",
2257
+ "eventId",
2258
+ "organizationId",
2259
+ "userId",
2260
+ "key",
2261
+ "uploadId",
2262
+ "email",
2263
+ "joinCode",
2264
+ "slug",
2265
+ "name"
2266
+ ],
2267
+ "upload": "setup-image"
2268
+ },
2269
+ {
2270
+ "effects": ["state-change", "external-write"],
2271
+ "input": "json",
2272
+ "operation": "mutation",
2273
+ "path": ["upload", "profile-image"],
2274
+ "procedure": "user.requestProfileImageUpload",
2275
+ "requiresAuth": true,
2276
+ "summary": "Upload a profile image from a local file.",
2277
+ "targetKeys": ["$self"],
2278
+ "upload": "profile-image"
2279
+ },
2280
+ {
2281
+ "effects": ["state-change", "external-write"],
2282
+ "input": "json",
2283
+ "operation": "mutation",
2284
+ "path": ["player", "mission", "upload"],
2285
+ "procedure": "event.requestMissionMediaUpload",
2286
+ "requiresAuth": true,
2287
+ "summary": "Upload mission media from a local file, including multipart video.",
2288
+ "targetKeys": [
2289
+ "id",
2290
+ "memberId",
2291
+ "invitationId",
2292
+ "broadcastId",
2293
+ "rewardId",
2294
+ "submissionId",
2295
+ "participantId",
2296
+ "participantIds",
2297
+ "missionId",
2298
+ "stationId",
2299
+ "teamId",
2300
+ "templateId",
2301
+ "eventId",
2302
+ "organizationId",
2303
+ "userId",
2304
+ "key",
2305
+ "uploadId",
2306
+ "email",
2307
+ "joinCode",
2308
+ "slug",
2309
+ "name"
2310
+ ],
2311
+ "upload": "mission-media"
2312
+ },
2313
+ {
2314
+ "effects": ["state-change", "external-write"],
2315
+ "input": "json",
2316
+ "operation": "mutation",
2317
+ "path": ["player", "mission", "upload-complete"],
2318
+ "procedure": "event.completeMissionMediaMultipartUpload",
2319
+ "requiresAuth": true,
2320
+ "summary": "Complete a low-level multipart mission upload.",
2321
+ "targetKeys": [
2322
+ "id",
2323
+ "memberId",
2324
+ "invitationId",
2325
+ "broadcastId",
2326
+ "rewardId",
2327
+ "submissionId",
2328
+ "participantId",
2329
+ "participantIds",
2330
+ "missionId",
2331
+ "stationId",
2332
+ "teamId",
2333
+ "templateId",
2334
+ "eventId",
2335
+ "organizationId",
2336
+ "userId",
2337
+ "key",
2338
+ "uploadId",
2339
+ "email",
2340
+ "joinCode",
2341
+ "slug",
2342
+ "name"
2343
+ ]
2344
+ },
2345
+ {
2346
+ "effects": ["state-change", "delete", "external-write"],
2347
+ "input": "json",
2348
+ "operation": "mutation",
2349
+ "path": ["player", "mission", "upload-abort"],
2350
+ "procedure": "event.abortMissionMediaMultipartUpload",
2351
+ "requiresAuth": true,
2352
+ "summary": "Abort a low-level multipart mission upload.",
2353
+ "targetKeys": [
2354
+ "id",
2355
+ "memberId",
2356
+ "invitationId",
2357
+ "broadcastId",
2358
+ "rewardId",
2359
+ "submissionId",
2360
+ "participantId",
2361
+ "participantIds",
2362
+ "missionId",
2363
+ "stationId",
2364
+ "teamId",
2365
+ "templateId",
2366
+ "eventId",
2367
+ "organizationId",
2368
+ "userId",
2369
+ "key",
2370
+ "uploadId",
2371
+ "email",
2372
+ "joinCode",
2373
+ "slug",
2374
+ "name"
2375
+ ]
2376
+ },
2377
+ {
2378
+ "effects": [],
2379
+ "input": "json",
2380
+ "operation": "subscription",
2381
+ "path": ["player", "watch"],
2382
+ "procedure": "event.onPlayerEventChanged",
2383
+ "requiresAuth": true,
2384
+ "summary": "Watch player event changes as newline-delimited JSON."
2385
+ },
2386
+ {
2387
+ "effects": [],
2388
+ "input": "json",
2389
+ "operation": "subscription",
2390
+ "path": ["submission", "watch"],
2391
+ "procedure": "event.onSubmissionReviewQueueChanged",
2392
+ "requiresAuth": true,
2393
+ "summary": "Watch submission review queue changes as newline-delimited JSON."
2394
+ },
2395
+ {
2396
+ "effects": ["state-change"],
2397
+ "input": "json",
2398
+ "operation": "mutation",
2399
+ "path": ["organization", "create"],
2400
+ "procedure": "organization.create",
2401
+ "requiresAuth": true,
2402
+ "summary": "Create an organization.",
2403
+ "targetKeys": ["slug", "name"]
2404
+ },
2405
+ {
2406
+ "effects": ["state-change"],
2407
+ "input": "json",
2408
+ "operation": "mutation",
2409
+ "path": ["organization", "update"],
2410
+ "procedure": "organization.update",
2411
+ "requiresAuth": true,
2412
+ "summary": "Update an organization.",
2413
+ "targetKeys": [
2414
+ "id",
2415
+ "memberId",
2416
+ "invitationId",
2417
+ "broadcastId",
2418
+ "rewardId",
2419
+ "submissionId",
2420
+ "participantId",
2421
+ "participantIds",
2422
+ "missionId",
2423
+ "stationId",
2424
+ "teamId",
2425
+ "templateId",
2426
+ "eventId",
2427
+ "organizationId",
2428
+ "userId",
2429
+ "key",
2430
+ "uploadId",
2431
+ "email",
2432
+ "joinCode",
2433
+ "slug",
2434
+ "name"
2435
+ ]
2436
+ },
2437
+ {
2438
+ "effects": [],
2439
+ "input": "json",
2440
+ "operation": "mutation",
2441
+ "path": ["organization", "slug-check"],
2442
+ "procedure": "organization.checkSlug",
2443
+ "requiresAuth": true,
2444
+ "summary": "Check whether an organization slug is available.",
2445
+ "targetKeys": [
2446
+ "id",
2447
+ "memberId",
2448
+ "invitationId",
2449
+ "broadcastId",
2450
+ "rewardId",
2451
+ "submissionId",
2452
+ "participantId",
2453
+ "participantIds",
2454
+ "missionId",
2455
+ "stationId",
2456
+ "teamId",
2457
+ "templateId",
2458
+ "eventId",
2459
+ "organizationId",
2460
+ "userId",
2461
+ "key",
2462
+ "uploadId",
2463
+ "email",
2464
+ "joinCode",
2465
+ "slug",
2466
+ "name"
2467
+ ]
2468
+ },
2469
+ {
2470
+ "effects": [],
2471
+ "input": "json",
2472
+ "operation": "query",
2473
+ "path": ["organization", "access-check"],
2474
+ "procedure": "organization.checkOrganizationAccess",
2475
+ "requiresAuth": true,
2476
+ "summary": "Check access to an organization."
2477
+ },
2478
+ {
2479
+ "effects": [],
2480
+ "input": "none",
2481
+ "operation": "query",
2482
+ "path": ["organization", "onboarding"],
2483
+ "procedure": "organization.getOnboardingState",
2484
+ "requiresAuth": true,
2485
+ "summary": "Get the current user's organization onboarding state."
2486
+ },
2487
+ {
2488
+ "effects": [],
2489
+ "input": "json",
2490
+ "operation": "query",
2491
+ "path": ["organization", "invitation", "get"],
2492
+ "procedure": "organization.getInvitation",
2493
+ "requiresAuth": true,
2494
+ "summary": "Get an invitation addressed to the current user."
2495
+ },
2496
+ {
2497
+ "effects": ["state-change"],
2498
+ "input": "json",
2499
+ "operation": "mutation",
2500
+ "path": ["organization", "invitation", "accept"],
2501
+ "procedure": "organization.acceptInvitation",
2502
+ "requiresAuth": true,
2503
+ "summary": "Accept an organization invitation.",
2504
+ "targetKeys": [
2505
+ "id",
2506
+ "memberId",
2507
+ "invitationId",
2508
+ "broadcastId",
2509
+ "rewardId",
2510
+ "submissionId",
2511
+ "participantId",
2512
+ "participantIds",
2513
+ "missionId",
2514
+ "stationId",
2515
+ "teamId",
2516
+ "templateId",
2517
+ "eventId",
2518
+ "organizationId",
2519
+ "userId",
2520
+ "key",
2521
+ "uploadId",
2522
+ "email",
2523
+ "joinCode",
2524
+ "slug",
2525
+ "name"
2526
+ ]
2527
+ },
2528
+ {
2529
+ "effects": ["state-change", "delete"],
2530
+ "input": "json",
2531
+ "operation": "mutation",
2532
+ "path": ["organization", "invitation", "reject"],
2533
+ "procedure": "organization.rejectInvitation",
2534
+ "requiresAuth": true,
2535
+ "summary": "Reject an organization invitation.",
2536
+ "targetKeys": [
2537
+ "id",
2538
+ "memberId",
2539
+ "invitationId",
2540
+ "broadcastId",
2541
+ "rewardId",
2542
+ "submissionId",
2543
+ "participantId",
2544
+ "participantIds",
2545
+ "missionId",
2546
+ "stationId",
2547
+ "teamId",
2548
+ "templateId",
2549
+ "eventId",
2550
+ "organizationId",
2551
+ "userId",
2552
+ "key",
2553
+ "uploadId",
2554
+ "email",
2555
+ "joinCode",
2556
+ "slug",
2557
+ "name"
2558
+ ]
2559
+ },
2560
+ {
2561
+ "effects": ["state-change", "delete"],
2562
+ "input": "json",
2563
+ "operation": "mutation",
2564
+ "path": ["organization", "invitation", "cancel"],
2565
+ "procedure": "organization.cancelInvitation",
2566
+ "requiresAuth": true,
2567
+ "summary": "Cancel an organization invitation.",
2568
+ "targetKeys": [
2569
+ "id",
2570
+ "memberId",
2571
+ "invitationId",
2572
+ "broadcastId",
2573
+ "rewardId",
2574
+ "submissionId",
2575
+ "participantId",
2576
+ "participantIds",
2577
+ "missionId",
2578
+ "stationId",
2579
+ "teamId",
2580
+ "templateId",
2581
+ "eventId",
2582
+ "organizationId",
2583
+ "userId",
2584
+ "key",
2585
+ "uploadId",
2586
+ "email",
2587
+ "joinCode",
2588
+ "slug",
2589
+ "name"
2590
+ ]
2591
+ },
2592
+ {
2593
+ "effects": ["state-change", "email", "external-write"],
2594
+ "input": "json",
2595
+ "operation": "mutation",
2596
+ "path": ["organization", "member", "invite"],
2597
+ "procedure": "organization.inviteMember",
2598
+ "requiresAuth": true,
2599
+ "summary": "Invite an organization member.",
2600
+ "targetKeys": [
2601
+ "id",
2602
+ "memberId",
2603
+ "invitationId",
2604
+ "broadcastId",
2605
+ "rewardId",
2606
+ "submissionId",
2607
+ "participantId",
2608
+ "participantIds",
2609
+ "missionId",
2610
+ "stationId",
2611
+ "teamId",
2612
+ "templateId",
2613
+ "eventId",
2614
+ "organizationId",
2615
+ "userId",
2616
+ "key",
2617
+ "uploadId",
2618
+ "email",
2619
+ "joinCode",
2620
+ "slug",
2621
+ "name"
2622
+ ]
2623
+ },
2624
+ {
2625
+ "effects": ["state-change", "delete"],
2626
+ "input": "json",
2627
+ "operation": "mutation",
2628
+ "path": ["organization", "member", "remove"],
2629
+ "procedure": "organization.removeMember",
2630
+ "requiresAuth": true,
2631
+ "summary": "Remove an organization member.",
2632
+ "targetKeys": [
2633
+ "id",
2634
+ "memberId",
2635
+ "invitationId",
2636
+ "broadcastId",
2637
+ "rewardId",
2638
+ "submissionId",
2639
+ "participantId",
2640
+ "participantIds",
2641
+ "missionId",
2642
+ "stationId",
2643
+ "teamId",
2644
+ "templateId",
2645
+ "eventId",
2646
+ "organizationId",
2647
+ "userId",
2648
+ "key",
2649
+ "uploadId",
2650
+ "email",
2651
+ "joinCode",
2652
+ "slug",
2653
+ "name"
2654
+ ]
2655
+ },
2656
+ {
2657
+ "effects": ["state-change"],
2658
+ "input": "json",
2659
+ "operation": "mutation",
2660
+ "path": ["organization", "member", "role-update"],
2661
+ "procedure": "organization.updateMemberRole",
2662
+ "requiresAuth": true,
2663
+ "summary": "Update an organization member role.",
2664
+ "targetKeys": [
2665
+ "id",
2666
+ "memberId",
2667
+ "invitationId",
2668
+ "broadcastId",
2669
+ "rewardId",
2670
+ "submissionId",
2671
+ "participantId",
2672
+ "participantIds",
2673
+ "missionId",
2674
+ "stationId",
2675
+ "teamId",
2676
+ "templateId",
2677
+ "eventId",
2678
+ "organizationId",
2679
+ "userId",
2680
+ "key",
2681
+ "uploadId",
2682
+ "email",
2683
+ "joinCode",
2684
+ "slug",
2685
+ "name"
2686
+ ]
2687
+ },
2688
+ {
2689
+ "effects": [],
2690
+ "input": "none",
2691
+ "operation": "query",
2692
+ "path": ["organization", "list-all"],
2693
+ "procedure": "organization.listAllForAdmin",
2694
+ "requiresAuth": true,
2695
+ "summary": "List every organization as a global admin."
2696
+ },
2697
+ {
2698
+ "effects": ["state-change"],
2699
+ "input": "json",
2700
+ "operation": "mutation",
2701
+ "path": ["template", "system-create"],
2702
+ "procedure": "template.createSystem",
2703
+ "requiresAuth": true,
2704
+ "summary": "Create a system template as a global admin.",
2705
+ "targetKeys": ["name"]
2706
+ },
2707
+ {
2708
+ "effects": [],
2709
+ "input": "json",
2710
+ "operation": "query",
2711
+ "path": ["admin", "users", "list"],
2712
+ "procedure": "user.listAdmin",
2713
+ "requiresAuth": true,
2714
+ "summary": "List and search users as a global admin."
2715
+ },
2716
+ {
2717
+ "effects": ["state-change"],
2718
+ "input": "json",
2719
+ "operation": "mutation",
2720
+ "path": ["admin", "users", "role-update"],
2721
+ "procedure": "user.updateGlobalRole",
2722
+ "requiresAuth": true,
2723
+ "summary": "Update a user's global role.",
2724
+ "targetKeys": [
2725
+ "id",
2726
+ "memberId",
2727
+ "invitationId",
2728
+ "broadcastId",
2729
+ "rewardId",
2730
+ "submissionId",
2731
+ "participantId",
2732
+ "participantIds",
2733
+ "missionId",
2734
+ "stationId",
2735
+ "teamId",
2736
+ "templateId",
2737
+ "eventId",
2738
+ "organizationId",
2739
+ "userId",
2740
+ "key",
2741
+ "uploadId",
2742
+ "email",
2743
+ "joinCode",
2744
+ "slug",
2745
+ "name"
2746
+ ]
2747
+ },
2748
+ {
2749
+ "effects": ["state-change", "delete"],
2750
+ "input": "json",
2751
+ "operation": "mutation",
2752
+ "path": ["admin", "users", "ban"],
2753
+ "procedure": "user.ban",
2754
+ "requiresAuth": true,
2755
+ "summary": "Ban a user and revoke their sessions and API keys.",
2756
+ "targetKeys": [
2757
+ "id",
2758
+ "memberId",
2759
+ "invitationId",
2760
+ "broadcastId",
2761
+ "rewardId",
2762
+ "submissionId",
2763
+ "participantId",
2764
+ "participantIds",
2765
+ "missionId",
2766
+ "stationId",
2767
+ "teamId",
2768
+ "templateId",
2769
+ "eventId",
2770
+ "organizationId",
2771
+ "userId",
2772
+ "key",
2773
+ "uploadId",
2774
+ "email",
2775
+ "joinCode",
2776
+ "slug",
2777
+ "name"
2778
+ ]
2779
+ },
2780
+ {
2781
+ "effects": ["state-change"],
2782
+ "input": "json",
2783
+ "operation": "mutation",
2784
+ "path": ["admin", "users", "unban"],
2785
+ "procedure": "user.unban",
2786
+ "requiresAuth": true,
2787
+ "summary": "Unban a user.",
2788
+ "targetKeys": [
2789
+ "id",
2790
+ "memberId",
2791
+ "invitationId",
2792
+ "broadcastId",
2793
+ "rewardId",
2794
+ "submissionId",
2795
+ "participantId",
2796
+ "participantIds",
2797
+ "missionId",
2798
+ "stationId",
2799
+ "teamId",
2800
+ "templateId",
2801
+ "eventId",
2802
+ "organizationId",
2803
+ "userId",
2804
+ "key",
2805
+ "uploadId",
2806
+ "email",
2807
+ "joinCode",
2808
+ "slug",
2809
+ "name"
2810
+ ]
2811
+ }
2812
+ ]