-
Notifications
You must be signed in to change notification settings - Fork 72
Expand file tree
/
Copy pathdblab_openapi.yaml
More file actions
1980 lines (1975 loc) · 58 KB
/
dblab_openapi.yaml
File metadata and controls
1980 lines (1975 loc) · 58 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
# OpenAPI spec for DBLab API
# Useful links:
# - validate and test: https://editor.swagger.io/
# - official reference location for this API: https://dblab.readme.io/
# - GitHub (give us a ⭐️): https://github.com/postgres-ai/database-lab-engine
openapi: 3.0.1
info:
title: DBLab API
description: This page provides the OpenAPI specification for the Database Lab (DBLab)
API, previously recognized as the DLE API (Database Lab Engine API).
contact:
name: DBLab API Support
url: https://postgres.ai/contact
email: api@postgres.ai
license:
name: Apache 2.0
url: https://github.com/postgres-ai/database-lab-engine/blob/dle-4-0/LICENSE
version: 4.1.0
externalDocs:
description: DBLab Docs
url: https://postgres.ai/docs/database-lab
servers:
- url: "https://demo.dblab.dev/api"
description: "DBLab demo server (with DB branching support); token: 'demo-token'"
x-examples:
Verification-Token: "demo-token"
- url: "https://demo.aws.postgres.ai:446/api"
description: "DBLab 3.x demo server; token: 'demo-token'"
x-examples:
Verification-Token: "demo-token"
- url: "{scheme}://{host}:{port}/{basePath}"
description: "Any DBLab accessed locally / through SSH port forwarding"
variables:
scheme:
enum:
- "https"
- "http"
default: "http"
description: "'http' for local connections and SSH port forwarding;
'https' for everything else."
host:
default: "localhost"
description: "where DBLab server is installed. Use 'localhost' to work locally
or when SSH port forwarding is used."
port:
default: "2346"
description: "Port to access DBLab UI or API. Originally, '2345' is used for
direct work with API and '2346' – with UI. However, with UI, API is also available,
at ':2346/api'."
basePath:
default: "api"
description: "basePath value to access API. Use empty when working with API port
(2345 by default), or '/api' when working with UI port ('2346' by default)."
x-examples:
Verification-Token: "custom_example_token"
tags:
- name: DBLab
description: "DBLab API Reference – database branching, instant cloning, and more.
DBLab CLI and UI rely on DBLab API."
externalDocs:
description: "DBLab Docs - tutorials, howtos, references."
url: https://postgres.ai/docs/reference-guides/database-lab-engine-api-reference
paths:
/status:
get:
tags:
- Instance
summary: DBLab instance status and detailed information
description: "Retrieves detailed information about the DBLab instance: status, version,
clones, snapshots, etc."
operationId: status
parameters:
- name: Verification-Token
in: header
required: true
schema:
type: string
responses:
200:
description: Returned detailed information about the DBLab instance
content:
application/json:
schema:
$ref: '#/components/schemas/Instance'
example:
status:
code: OK
message: Instance is ready
engine:
version: v4.0.0-alpha.5-20230516-0224
edition: standard
billingActive: true
instanceID: chhfqfcnvrvc73d0lij0
startedAt: '2023-05-16T03:50:19Z'
telemetry: true
disableConfigModification: false
pools:
- name: dblab_pool/dataset_1
mode: zfs
dataStateAt: ''
status: empty
cloneList: []
fileSystem:
mode: zfs
size: 30685528064
free: 30685282816
used: 245248
dataSize: 12288
usedBySnapshots: 0
usedByClones: 219648
compressRatio: 1
- name: dblab_pool/dataset_2
mode: zfs
dataStateAt: ''
status: empty
cloneList: []
fileSystem:
mode: zfs
size: 30685528064
free: 30685282816
used: 245248
dataSize: 12288
usedBySnapshots: 0
usedByClones: 219648
compressRatio: 1
- name: dblab_pool/dataset_3
mode: zfs
dataStateAt: ''
status: empty
cloneList: []
fileSystem:
mode: zfs
size: 30685528064
free: 30685282816
used: 245248
dataSize: 12288
usedBySnapshots: 0
usedByClones: 219648
compressRatio: 1
cloning:
expectedCloningTime: 0
numClones: 0
clones: []
retrieving:
mode: logical
status: pending
lastRefresh:
nextRefresh:
alerts: {}
activity:
provisioner:
dockerImage: postgresai/extended-postgres:15
containerConfig:
shm-size: 1gb
synchronization:
status:
code: Not available
message: ''
lastReplayedLsn: ''
lastReplayedLsnAt: ''
replicationLag: 0
replicationUptime: 0
401:
description: Unauthorized access
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
example:
code: "UNAUTHORIZED"
message: "Check your verification token."
/snapshots:
get:
tags:
- Snapshots
summary: List all snapshots
description: Return a list of all available snapshots.
operationId: snapshots
parameters:
- name: Verification-Token
in: header
required: true
schema:
type: string
- name: branch
in: query
required: false
schema:
type: string
responses:
200:
description: Returned a list of snapshots
content:
application/json:
schema:
type: array
items:
$ref: '#/components/schemas/Snapshot'
example:
- id: dblab_pool/dataset_2/nik-test-branch/20230509212711@20230509212711
createdAt: '2023-05-09T21:27:11Z'
dataStateAt: '2023-05-09T21:27:11Z'
physicalSize: 0
logicalSize: 11518021632
pool: dblab_pool/dataset_2
numClones: 1
- id: dblab_pool/dataset_2/nik-test-branch/20230307171959@20230307171959
createdAt: '2023-03-07T17:19:59Z'
dataStateAt: '2023-03-07T17:19:59Z'
physicalSize: 151552
logicalSize: 11518015488
pool: dblab_pool/dataset_2
numClones: 1
401:
description: Unauthorized access
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
example:
code: "UNAUTHORIZED"
message: "Check your verification token."
/full-refresh:
post:
tags:
- Instance
summary: Trigger full data refresh
description: "Initiates a full data refresh."
operationId: refresh
parameters:
- name: Verification-Token
in: header
required: true
schema:
type: string
responses:
200:
description: Full refresh has been initiated
content:
application/json:
schema:
$ref: '#/components/schemas/FullRefresh'
example:
status: OK
message: Full refresh started
401:
description: Unauthorized access
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
example:
code: "UNAUTHORIZED"
message: "Check your verification token."
/snapshot:
post:
tags:
- Snapshots
summary: Create a snapshot
description: "Create a new snapshot from the current state of the selected pool.
This snapshot can later be used to create clones or new branches."
parameters:
- name: Verification-Token
in: header
required: true
schema:
type: string
requestBody:
description: "Optional parameters for snapshot creation.
If no pool name is provided, the first available pool is used."
content:
'*/*':
schema:
type: object
properties:
poolName:
type: string
description: Name of the pool to create snapshot in.
required: false
responses:
200:
description: OK
content:
'*/*':
schema:
$ref: '#/components/schemas/Snapshot'
400:
description: Bad request
content:
'*/*':
schema:
$ref: '#/components/schemas/Error'
x-codegen-request-body-name: body
/snapshot/{id}:
delete:
tags:
- Snapshots
summary: Delete a snapshot
description: "Permanently delete the specified snapshot.
If the snapshot has dependent clones or datasets, `force=true` can be provided as a query parameter."
parameters:
- name: id
in: path
required: true
description: The ID of the snapshot to delete.
schema:
type: string
pattern: '.*'
- name: force
in: query
required: false
description: Force deletion even if dependent clones or datasets exist.
schema:
type: boolean
- name: Verification-Token
in: header
required: true
schema:
type: string
responses:
200:
description: OK
content:
'*/*':
schema:
$ref: '#/components/schemas/ResponseStatus'
400:
description: Bad request
content:
'*/*':
schema:
$ref: '#/components/schemas/Error'
/clones:
get:
tags:
- Clones
summary: List all clones
description: Return a list of all available clones (database endpoints).
parameters:
- name: Verification-Token
in: header
required: true
schema:
type: string
responses:
200:
description: Returned a list of all available clones
content:
application/json:
schema:
type: array
items:
$ref: '#/components/schemas/Clone'
example:
- id: test-clone-2
snapshot:
id: dblab_pool/dataset_2/nik-test-branch/20230509212711@20230509212711
createdAt: '2023-05-09T21:27:11Z'
dataStateAt: '2023-05-09T21:27:11Z'
physicalSize: 120832
logicalSize: 11518021632
pool: dblab_pool/dataset_2
numClones: 3
branch: ''
protected: false
deleteAt:
createdAt: '2023-05-16T06:12:52Z'
status:
code: OK
message: Clone is ready to accept Postgres connections.
db:
connStr: host=branching.aws.postgres.ai port=6005 user=tester dbname=postgres
host: branching.aws.postgres.ai
port: '6005'
username: tester
password: ''
dbName: postgres
metadata:
cloneDiffSize: 484352
logicalSize: 11518029312
cloningTime: 1.5250661829999999
maxIdleMinutes: 120
- id: test-clone
snapshot:
id: dblab_pool/dataset_2/nik-test-branch/20230509212711@20230509212711
createdAt: '2023-05-09T21:27:11Z'
dataStateAt: '2023-05-09T21:27:11Z'
physicalSize: 120832
logicalSize: 11518021632
pool: dblab_pool/dataset_2
numClones: 3
branch: ''
protected: false
deleteAt:
createdAt: '2023-05-16T06:12:30Z'
status:
code: OK
message: Clone is ready to accept Postgres connections.
db:
connStr: host=branching.aws.postgres.ai port=6004 user=tester dbname=postgres
host: branching.aws.postgres.ai
port: '6004'
username: tester
password: ''
dbName: postgres
metadata:
cloneDiffSize: 486400
logicalSize: 11518030336
cloningTime: 1.57552338
maxIdleMinutes: 120
401:
description: Unauthorized access
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
example:
code: "UNAUTHORIZED"
message: "Check your verification token."
/clone:
post:
tags:
- Clones
summary: Create a clone
operationId: createClone
parameters:
- name: Verification-Token
in: header
required: true
schema:
type: string
requestBody:
description: Clone object
content:
application/json:
schema:
$ref: '#/components/schemas/CreateClone'
required: true
responses:
201:
description: Created a new clone
content:
application/json:
schema:
$ref: '#/components/schemas/Clone'
example:
id: test-clone-2
snapshot:
id: dblab_pool/dataset_2/nik-test-branch/20230509212711@20230509212711
createdAt: '2023-05-09T21:27:11Z'
dataStateAt: '2023-05-09T21:27:11Z'
physicalSize: 120832
logicalSize: 11518021632
pool: dblab_pool/dataset_2
numClones: 3
branch: ''
protected: false
deleteAt:
createdAt: '2023-05-16T06:12:52Z'
status:
code: CREATING
message: Clone is being created.
db:
connStr: ''
host: ''
port: ''
username: tester
password: ''
dbName: postgres
metadata:
cloneDiffSize: 0
logicalSize: 0
cloningTime: 0
maxIdleMinutes: 0
400:
description: Returned an error caused by invalid request
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
example:
code: "BAD_REQUEST"
message: "clone with such ID already exists"
401:
description: Unauthorized access
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
example:
code: "UNAUTHORIZED"
message: "Check your verification token."
x-codegen-request-body-name: body
/clone/{id}:
get:
tags:
- Clones
summary: Retrieve a clone
description: Retrieves the information for the specified clone.
operationId: getClone
parameters:
- name: Verification-Token
in: header
required: true
schema:
type: string
- name: id
in: path
description: Clone ID
required: true
schema:
type: string
responses:
200:
description: Returned detailed information for the specified clone
content:
application/json:
schema:
$ref: '#/components/schemas/Clone'
example:
id: test-clone
snapshot:
id: dblab_pool/dataset_2/nik-test-branch/20230509212711@20230509212711
createdAt: '2023-05-09T21:27:11Z'
dataStateAt: '2023-05-09T21:27:11Z'
physicalSize: 120832
logicalSize: 11518021632
pool: dblab_pool/dataset_2
numClones: 3
branch: ''
protected: false
deleteAt:
createdAt: '2023-05-16T06:12:30Z'
status:
code: OK
message: Clone is ready to accept Postgres connections.
db:
connStr: host=branching.aws.postgres.ai port=6004 user=tester dbname=postgres
host: branching.aws.postgres.ai
port: '6004'
username: tester
password: ''
dbName: postgres
metadata:
cloneDiffSize: 486400
logicalSize: 11518030336
cloningTime: 1.57552338
maxIdleMinutes: 120
401:
description: Unauthorized access
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
example:
code: "UNAUTHORIZED"
message: "Check your verification token."
404:
description: Not found
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
example:
code: NOT_FOUND
message: Requested object does not exist. Specify your request.
delete:
tags:
- Clones
summary: Delete a clone
description: Permanently delete the specified clone. It cannot be undone.
operationId: deleteClone
parameters:
- name: Verification-Token
in: header
required: true
schema:
type: string
- name: id
in: path
description: Clone ID
required: true
schema:
type: string
responses:
200:
description: Successfully deleted the specified clone
content:
application/json:
example:
"OK"
401:
description: Unauthorized access
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
example:
code: "UNAUTHORIZED"
message: "Check your verification token."
404:
description: Not found
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
example:
code: NOT_FOUND
message: Requested object does not exist. Specify your request.
patch:
tags:
- Clones
summary: Update a clone
description: "Updates the specified clone by setting the values of the parameters passed.
Currently, only one paramater is supported: 'protected'."
operationId: updateClone
parameters:
- name: Verification-Token
in: header
required: true
schema:
type: string
- name: id
in: path
description: Clone ID
required: true
schema:
type: string
requestBody:
description: Clone object
content:
application/json:
schema:
$ref: '#/components/schemas/UpdateClone'
required: true
responses:
200:
description: Successfully updated the specified clone
content:
application/json:
schema:
$ref: '#/components/schemas/Clone'
example:
id: test-clone-2
snapshot:
id: dblab_pool/dataset_2/nik-test-branch/20230509212711@20230509212711
createdAt: '2023-05-09T21:27:11Z'
dataStateAt: '2023-05-09T21:27:11Z'
physicalSize: 120832
logicalSize: 11518021632
pool: dblab_pool/dataset_2
numClones: 2
branch: ''
protected: true
deleteAt:
createdAt: '2023-05-16T06:12:52Z'
status:
code: OK
message: Clone is ready to accept Postgres connections.
db:
connStr: host=branching.aws.postgres.ai port=6005 user=tester dbname=postgres
host: branching.aws.postgres.ai
port: '6005'
username: tester
password: ''
dbName: postgres
metadata:
cloneDiffSize: 561664
logicalSize: 11518030336
cloningTime: 1.5250661829999999
maxIdleMinutes: 120
401:
description: Unauthorized access
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
example:
code: "UNAUTHORIZED"
message: "Check your verification token."
#404: # TODO: fix it in engine (currently returns 500)
# description: Not found
# content:
# application/json:
# schema:
# $ref: '#/components/schemas/Error'
# example:
# code: NOT_FOUND
# message: Requested object does not exist. Specify your request.
x-codegen-request-body-name: body
/clone/{id}/reset:
post:
tags:
- Clones
summary: Reset a clone
description: "Reset the specified clone to a previously stored state.
This can be done by specifying a particular snapshot ID or using the 'latest' flag.
All changes made after the snapshot are discarded during the reset, unless those
changes were preserved in a snapshot. All database connections will be reset,
requiring users and applications to reconnect. The duration of the reset operation
is comparable to the creation of a new clone. However, unlike creating a new clone,
the reset operation retains the database credentials and does not change the port.
Consequently, users and applications can continue to use the same database credentials
post-reset, though reconnection will be necessary. Please note that any unsaved changes
will be irretrievably lost during this operation, so ensure necessary data is backed up
in a snapshot prior to resetting the clone."
operationId: resetClone
parameters:
- name: Verification-Token
in: header
required: true
schema:
type: string
- name: id
in: path
description: Clone ID
required: true
schema:
type: string
requestBody:
description: Reset object
content:
application/json:
schema:
$ref: '#/components/schemas/ResetClone'
required: false
responses:
200:
description: Successfully reset the state of the specified clone
content:
application/json:
example:
"OK"
401:
description: Unauthorized access
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
example:
code: "UNAUTHORIZED"
message: "Check your verification token."
#404: # TODO: fix it in engine (currently returns 500)
# description: Not found
# content:
# application/json:
# schema:
# $ref: '#/components/schemas/Error'
x-codegen-request-body-name: body
/branches:
get:
tags:
- Branches
summary: List all branches
description: Return a list of all available branches (named pointers to snapshots).
parameters:
- name: Verification-Token
in: header
required: true
schema:
type: string
responses:
200:
description: Returned a list of all available branches
content:
'*/*':
schema:
type: array
items:
$ref: '#/components/schemas/Branch'
example:
- name: my-1
parent: main
dataStateAt: '20230224202652'
snapshotID: dblab_pool/dataset_2/main/20230224202652@20230224202652
- name: nik-test-branch
parent: "-"
dataStateAt: '20230509212711'
snapshotID: dblab_pool/dataset_2/nik-test-branch/20230509212711@20230509212711
- name: main
parent: "-"
dataStateAt: '20230224202652'
snapshotID: dblab_pool/dataset_2/main/20230224202652@20230224202652
401:
description: Unauthorized access
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
example:
code: "UNAUTHORIZED"
message: "Check your verification token."
/branch/snapshot/{id}:
get:
tags:
- Snapshots
summary: Retrieve a snapshot
description: Retrieves the information for the specified snapshot.
parameters:
- name: id
in: path
description: ID of the branch snapshot
required: true
schema:
type: string
- name: Verification-Token
in: header
required: true
schema:
type: string
responses:
200:
description: OK
content:
'*/*':
schema:
$ref: '#/components/schemas/SnapshotDetails'
400:
description: Bad request
content:
'*/*':
schema:
$ref: '#/components/schemas/Error'
/branch:
post:
tags:
- Branches
summary: Create a branch
parameters:
- name: Verification-Token
in: header
required: true
schema:
type: string
requestBody:
content:
'*/*':
schema:
type: object
properties:
branchName:
type: string
description: The name of the new branch.
baseBranch:
type: string
description: "The name of parent branch user to create a new branch.
Must not be specified if 'snapshotID' is specified."
snapshotID:
type: string
description: "The ID of the snapshot used to create a new branch.
Must not be specified if 'baseBranch' is specified."
required: true
responses:
200:
description: OK
content:
'*/*':
schema:
type: object
properties:
name:
type: string
400:
description: Bad request
content:
'*/*':
schema:
$ref: '#/components/schemas/Error'
x-codegen-request-body-name: body
/branch/snapshot:
post:
tags:
- Snapshots
summary: Create a snapshot
description: "Create a new snapshot using the specified clone. After a snapshot
has been created, the original clone can be deleted in order to free up compute resources, if necessary.
The snapshot created by this endpoint can be used later to create one or more new clones."
parameters:
- name: Verification-Token
in: header
required: true
schema:
type: string
requestBody:
description: "Parameters necessary for snapshot creation: 'cloneID' – the
ID of the clone, 'message' – description of the snapshot"
content:
'*/*':
schema:
type: object
properties:
cloneID:
type: string
message:
type: string
required: true
responses:
200:
description: OK
content:
'*/*':
schema:
type: object
properties:
snapshotID:
type: string
400:
description: Bad request
content:
'*/*':
schema:
$ref: '#/components/schemas/Error'
x-codegen-request-body-name: body
/branch/{branchName}:
delete:
tags:
- Branches
summary: Delete a branch
description: "Permanently delete the specified branch. It cannot be undone."
parameters:
- name: branchName
in: path
required: true
schema:
type: string
description: "The name of the branch to be deleted."
- name: Verification-Token
in: header
required: true
schema:
type: string
responses:
200:
description: OK
content:
'*/*':
schema:
$ref: '#/components/schemas/ResponseStatus'
400:
description: Bad request
content:
'*/*':
schema:
$ref: '#/components/schemas/Error'
x-codegen-request-body-name: body
/branch/{branchName}/log:
get:
tags:
- Branches
summary: Retrieve a branch log
description: Retrieve a log of the specified branch (history of snapshots).
parameters:
- name: branchName
in: path
required: true
schema:
type: string
description: The name of the branch.
- name: Verification-Token
in: header
required: true
schema:
type: string
responses:
200:
description: OK
content:
'*/*':
schema:
type: array
items:
$ref: '#/components/schemas/SnapshotDetails'
x-codegen-request-body-name: body
/instance/retrieval:
get:
tags:
- Instance
summary: Data refresh status
description: 'Report a status of the data refresh subsystem (also known as
"data retrieval"): timestamps of the previous and next refresh runs, status, messages.'
operationId: instanceRetrieval
parameters:
- name: Verification-Token
in: header
required: true
schema:
type: string
responses:
200:
description: Reported a status of the data retrieval subsystem
content:
application/json:
schema:
$ref: '#/components/schemas/Retrieving'
example:
mode: logical