@hestia-earth/caching-api 0.1.0 → 0.1.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/index.d.ts +352 -0
- package/openapi.json +563 -12
- package/package.json +1 -1
package/index.d.ts
CHANGED
|
@@ -102,6 +102,81 @@ export interface paths {
|
|
|
102
102
|
patch?: never;
|
|
103
103
|
trace?: never;
|
|
104
104
|
};
|
|
105
|
+
"/tokens": {
|
|
106
|
+
parameters: {
|
|
107
|
+
query?: never;
|
|
108
|
+
header?: never;
|
|
109
|
+
path?: never;
|
|
110
|
+
cookie?: never;
|
|
111
|
+
};
|
|
112
|
+
/**
|
|
113
|
+
* Read All
|
|
114
|
+
* @description Lists all API tokens. Secrets are never returned.
|
|
115
|
+
*/
|
|
116
|
+
get: operations["read_all_tokens_get"];
|
|
117
|
+
put?: never;
|
|
118
|
+
/**
|
|
119
|
+
* Create
|
|
120
|
+
* @description Creates a new API token. The plaintext token is returned once and is not
|
|
121
|
+
* stored — save it now, it cannot be retrieved later.
|
|
122
|
+
*/
|
|
123
|
+
post: operations["create_tokens_post"];
|
|
124
|
+
delete?: never;
|
|
125
|
+
options?: never;
|
|
126
|
+
head?: never;
|
|
127
|
+
patch?: never;
|
|
128
|
+
trace?: never;
|
|
129
|
+
};
|
|
130
|
+
"/tokens/{token_id}": {
|
|
131
|
+
parameters: {
|
|
132
|
+
query?: never;
|
|
133
|
+
header?: never;
|
|
134
|
+
path?: never;
|
|
135
|
+
cookie?: never;
|
|
136
|
+
};
|
|
137
|
+
/**
|
|
138
|
+
* Read One
|
|
139
|
+
* @description Retrieves a single API token by its id.
|
|
140
|
+
*/
|
|
141
|
+
get: operations["read_one_tokens__token_id__get"];
|
|
142
|
+
put?: never;
|
|
143
|
+
post?: never;
|
|
144
|
+
/**
|
|
145
|
+
* Remove
|
|
146
|
+
* @description Deletes an API token.
|
|
147
|
+
*/
|
|
148
|
+
delete: operations["remove_tokens__token_id__delete"];
|
|
149
|
+
options?: never;
|
|
150
|
+
head?: never;
|
|
151
|
+
/**
|
|
152
|
+
* Update
|
|
153
|
+
* @description Updates a token: rename, re-scope, renew (change expiry) or (de)activate it.
|
|
154
|
+
* Does not rotate the secret.
|
|
155
|
+
*/
|
|
156
|
+
patch: operations["update_tokens__token_id__patch"];
|
|
157
|
+
trace?: never;
|
|
158
|
+
};
|
|
159
|
+
"/tokens/{token_id}/reactivate": {
|
|
160
|
+
parameters: {
|
|
161
|
+
query?: never;
|
|
162
|
+
header?: never;
|
|
163
|
+
path?: never;
|
|
164
|
+
cookie?: never;
|
|
165
|
+
};
|
|
166
|
+
get?: never;
|
|
167
|
+
put?: never;
|
|
168
|
+
/**
|
|
169
|
+
* Reactivate
|
|
170
|
+
* @description Reactivates a token, rotating its secret and returning the new plaintext.
|
|
171
|
+
* The previous secret is invalidated immediately.
|
|
172
|
+
*/
|
|
173
|
+
post: operations["reactivate_tokens__token_id__reactivate_post"];
|
|
174
|
+
delete?: never;
|
|
175
|
+
options?: never;
|
|
176
|
+
head?: never;
|
|
177
|
+
patch?: never;
|
|
178
|
+
trace?: never;
|
|
179
|
+
};
|
|
105
180
|
"/version": {
|
|
106
181
|
parameters: {
|
|
107
182
|
query?: never;
|
|
@@ -190,6 +265,98 @@ export interface components {
|
|
|
190
265
|
/** Offset */
|
|
191
266
|
offset: number;
|
|
192
267
|
};
|
|
268
|
+
/** TokenCreate */
|
|
269
|
+
TokenCreate: {
|
|
270
|
+
/** Name */
|
|
271
|
+
name: string;
|
|
272
|
+
/** Scopes */
|
|
273
|
+
scopes: string[];
|
|
274
|
+
/** Expires At */
|
|
275
|
+
expires_at?: string | null;
|
|
276
|
+
};
|
|
277
|
+
/** TokenOut */
|
|
278
|
+
TokenOut: {
|
|
279
|
+
/** Id */
|
|
280
|
+
id: string;
|
|
281
|
+
/** Name */
|
|
282
|
+
name: string;
|
|
283
|
+
/** Prefix */
|
|
284
|
+
prefix: string;
|
|
285
|
+
/** Scopes */
|
|
286
|
+
scopes: string[];
|
|
287
|
+
/** Is Active */
|
|
288
|
+
is_active: boolean;
|
|
289
|
+
/** Active */
|
|
290
|
+
active: boolean;
|
|
291
|
+
/** Expires At */
|
|
292
|
+
expires_at?: string | null;
|
|
293
|
+
/** Last Used At */
|
|
294
|
+
last_used_at?: string | null;
|
|
295
|
+
/**
|
|
296
|
+
* Created At
|
|
297
|
+
* Format: date-time
|
|
298
|
+
*/
|
|
299
|
+
created_at: string;
|
|
300
|
+
/** Updated At */
|
|
301
|
+
updated_at?: string | null;
|
|
302
|
+
};
|
|
303
|
+
/**
|
|
304
|
+
* TokenReactivate
|
|
305
|
+
* @description Reactivation rotates the secret; an optional new expiry may be set
|
|
306
|
+
* (null clears the expiry so the token never expires).
|
|
307
|
+
*/
|
|
308
|
+
TokenReactivate: {
|
|
309
|
+
/** Expires At */
|
|
310
|
+
expires_at?: string | null;
|
|
311
|
+
};
|
|
312
|
+
/**
|
|
313
|
+
* TokenUpdate
|
|
314
|
+
* @description Partial update (rename, re-scope, renew expiry, (de)activate).
|
|
315
|
+
*
|
|
316
|
+
* Does not rotate the secret; use the reactivate endpoint for that.
|
|
317
|
+
*/
|
|
318
|
+
TokenUpdate: {
|
|
319
|
+
/** Name */
|
|
320
|
+
name?: string | null;
|
|
321
|
+
/** Scopes */
|
|
322
|
+
scopes?: string[] | null;
|
|
323
|
+
/** Expires At */
|
|
324
|
+
expires_at?: string | null;
|
|
325
|
+
/** Is Active */
|
|
326
|
+
is_active?: boolean | null;
|
|
327
|
+
};
|
|
328
|
+
/**
|
|
329
|
+
* TokenWithSecret
|
|
330
|
+
* @description Returned only on creation and reactivation: carries the plaintext token,
|
|
331
|
+
* which is never stored and cannot be retrieved again.
|
|
332
|
+
*/
|
|
333
|
+
TokenWithSecret: {
|
|
334
|
+
/** Id */
|
|
335
|
+
id: string;
|
|
336
|
+
/** Name */
|
|
337
|
+
name: string;
|
|
338
|
+
/** Prefix */
|
|
339
|
+
prefix: string;
|
|
340
|
+
/** Scopes */
|
|
341
|
+
scopes: string[];
|
|
342
|
+
/** Is Active */
|
|
343
|
+
is_active: boolean;
|
|
344
|
+
/** Active */
|
|
345
|
+
active: boolean;
|
|
346
|
+
/** Expires At */
|
|
347
|
+
expires_at?: string | null;
|
|
348
|
+
/** Last Used At */
|
|
349
|
+
last_used_at?: string | null;
|
|
350
|
+
/**
|
|
351
|
+
* Created At
|
|
352
|
+
* Format: date-time
|
|
353
|
+
*/
|
|
354
|
+
created_at: string;
|
|
355
|
+
/** Updated At */
|
|
356
|
+
updated_at?: string | null;
|
|
357
|
+
/** Token */
|
|
358
|
+
token: string;
|
|
359
|
+
};
|
|
193
360
|
/** ValidationError */
|
|
194
361
|
ValidationError: {
|
|
195
362
|
/** Location */
|
|
@@ -470,6 +637,191 @@ export interface operations {
|
|
|
470
637
|
};
|
|
471
638
|
};
|
|
472
639
|
};
|
|
640
|
+
read_all_tokens_get: {
|
|
641
|
+
parameters: {
|
|
642
|
+
query?: never;
|
|
643
|
+
header?: never;
|
|
644
|
+
path?: never;
|
|
645
|
+
cookie?: never;
|
|
646
|
+
};
|
|
647
|
+
requestBody?: never;
|
|
648
|
+
responses: {
|
|
649
|
+
/** @description Successful Response */
|
|
650
|
+
200: {
|
|
651
|
+
headers: {
|
|
652
|
+
[name: string]: unknown;
|
|
653
|
+
};
|
|
654
|
+
content: {
|
|
655
|
+
"application/json": components["schemas"]["TokenOut"][];
|
|
656
|
+
};
|
|
657
|
+
};
|
|
658
|
+
};
|
|
659
|
+
};
|
|
660
|
+
create_tokens_post: {
|
|
661
|
+
parameters: {
|
|
662
|
+
query?: never;
|
|
663
|
+
header?: never;
|
|
664
|
+
path?: never;
|
|
665
|
+
cookie?: never;
|
|
666
|
+
};
|
|
667
|
+
requestBody: {
|
|
668
|
+
content: {
|
|
669
|
+
"application/json": components["schemas"]["TokenCreate"];
|
|
670
|
+
};
|
|
671
|
+
};
|
|
672
|
+
responses: {
|
|
673
|
+
/** @description Successful Response */
|
|
674
|
+
201: {
|
|
675
|
+
headers: {
|
|
676
|
+
[name: string]: unknown;
|
|
677
|
+
};
|
|
678
|
+
content: {
|
|
679
|
+
"application/json": components["schemas"]["TokenWithSecret"];
|
|
680
|
+
};
|
|
681
|
+
};
|
|
682
|
+
/** @description Validation Error */
|
|
683
|
+
422: {
|
|
684
|
+
headers: {
|
|
685
|
+
[name: string]: unknown;
|
|
686
|
+
};
|
|
687
|
+
content: {
|
|
688
|
+
"application/json": components["schemas"]["HTTPValidationError"];
|
|
689
|
+
};
|
|
690
|
+
};
|
|
691
|
+
};
|
|
692
|
+
};
|
|
693
|
+
read_one_tokens__token_id__get: {
|
|
694
|
+
parameters: {
|
|
695
|
+
query?: never;
|
|
696
|
+
header?: never;
|
|
697
|
+
path: {
|
|
698
|
+
token_id: string;
|
|
699
|
+
};
|
|
700
|
+
cookie?: never;
|
|
701
|
+
};
|
|
702
|
+
requestBody?: never;
|
|
703
|
+
responses: {
|
|
704
|
+
/** @description Successful Response */
|
|
705
|
+
200: {
|
|
706
|
+
headers: {
|
|
707
|
+
[name: string]: unknown;
|
|
708
|
+
};
|
|
709
|
+
content: {
|
|
710
|
+
"application/json": components["schemas"]["TokenOut"];
|
|
711
|
+
};
|
|
712
|
+
};
|
|
713
|
+
/** @description Validation Error */
|
|
714
|
+
422: {
|
|
715
|
+
headers: {
|
|
716
|
+
[name: string]: unknown;
|
|
717
|
+
};
|
|
718
|
+
content: {
|
|
719
|
+
"application/json": components["schemas"]["HTTPValidationError"];
|
|
720
|
+
};
|
|
721
|
+
};
|
|
722
|
+
};
|
|
723
|
+
};
|
|
724
|
+
remove_tokens__token_id__delete: {
|
|
725
|
+
parameters: {
|
|
726
|
+
query?: never;
|
|
727
|
+
header?: never;
|
|
728
|
+
path: {
|
|
729
|
+
token_id: string;
|
|
730
|
+
};
|
|
731
|
+
cookie?: never;
|
|
732
|
+
};
|
|
733
|
+
requestBody?: never;
|
|
734
|
+
responses: {
|
|
735
|
+
/** @description Successful Response */
|
|
736
|
+
200: {
|
|
737
|
+
headers: {
|
|
738
|
+
[name: string]: unknown;
|
|
739
|
+
};
|
|
740
|
+
content: {
|
|
741
|
+
"application/json": unknown;
|
|
742
|
+
};
|
|
743
|
+
};
|
|
744
|
+
/** @description Validation Error */
|
|
745
|
+
422: {
|
|
746
|
+
headers: {
|
|
747
|
+
[name: string]: unknown;
|
|
748
|
+
};
|
|
749
|
+
content: {
|
|
750
|
+
"application/json": components["schemas"]["HTTPValidationError"];
|
|
751
|
+
};
|
|
752
|
+
};
|
|
753
|
+
};
|
|
754
|
+
};
|
|
755
|
+
update_tokens__token_id__patch: {
|
|
756
|
+
parameters: {
|
|
757
|
+
query?: never;
|
|
758
|
+
header?: never;
|
|
759
|
+
path: {
|
|
760
|
+
token_id: string;
|
|
761
|
+
};
|
|
762
|
+
cookie?: never;
|
|
763
|
+
};
|
|
764
|
+
requestBody: {
|
|
765
|
+
content: {
|
|
766
|
+
"application/json": components["schemas"]["TokenUpdate"];
|
|
767
|
+
};
|
|
768
|
+
};
|
|
769
|
+
responses: {
|
|
770
|
+
/** @description Successful Response */
|
|
771
|
+
200: {
|
|
772
|
+
headers: {
|
|
773
|
+
[name: string]: unknown;
|
|
774
|
+
};
|
|
775
|
+
content: {
|
|
776
|
+
"application/json": components["schemas"]["TokenOut"];
|
|
777
|
+
};
|
|
778
|
+
};
|
|
779
|
+
/** @description Validation Error */
|
|
780
|
+
422: {
|
|
781
|
+
headers: {
|
|
782
|
+
[name: string]: unknown;
|
|
783
|
+
};
|
|
784
|
+
content: {
|
|
785
|
+
"application/json": components["schemas"]["HTTPValidationError"];
|
|
786
|
+
};
|
|
787
|
+
};
|
|
788
|
+
};
|
|
789
|
+
};
|
|
790
|
+
reactivate_tokens__token_id__reactivate_post: {
|
|
791
|
+
parameters: {
|
|
792
|
+
query?: never;
|
|
793
|
+
header?: never;
|
|
794
|
+
path: {
|
|
795
|
+
token_id: string;
|
|
796
|
+
};
|
|
797
|
+
cookie?: never;
|
|
798
|
+
};
|
|
799
|
+
requestBody?: {
|
|
800
|
+
content: {
|
|
801
|
+
"application/json": components["schemas"]["TokenReactivate"];
|
|
802
|
+
};
|
|
803
|
+
};
|
|
804
|
+
responses: {
|
|
805
|
+
/** @description Successful Response */
|
|
806
|
+
200: {
|
|
807
|
+
headers: {
|
|
808
|
+
[name: string]: unknown;
|
|
809
|
+
};
|
|
810
|
+
content: {
|
|
811
|
+
"application/json": components["schemas"]["TokenWithSecret"];
|
|
812
|
+
};
|
|
813
|
+
};
|
|
814
|
+
/** @description Validation Error */
|
|
815
|
+
422: {
|
|
816
|
+
headers: {
|
|
817
|
+
[name: string]: unknown;
|
|
818
|
+
};
|
|
819
|
+
content: {
|
|
820
|
+
"application/json": components["schemas"]["HTTPValidationError"];
|
|
821
|
+
};
|
|
822
|
+
};
|
|
823
|
+
};
|
|
824
|
+
};
|
|
473
825
|
version_version_get: {
|
|
474
826
|
parameters: {
|
|
475
827
|
query?: never;
|
package/openapi.json
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
{
|
|
2
2
|
"openapi": "3.1.0",
|
|
3
3
|
"info": {
|
|
4
|
-
"title": "
|
|
5
|
-
"version": "0.1.
|
|
4
|
+
"title": "HESTIA Caching API",
|
|
5
|
+
"version": "0.1.2"
|
|
6
6
|
},
|
|
7
7
|
"paths": {
|
|
8
8
|
"/sites/{key}": {
|
|
@@ -418,19 +418,71 @@
|
|
|
418
418
|
}
|
|
419
419
|
}
|
|
420
420
|
},
|
|
421
|
-
"/
|
|
421
|
+
"/tokens": {
|
|
422
422
|
"get": {
|
|
423
423
|
"tags": [
|
|
424
|
-
"
|
|
424
|
+
"tokens"
|
|
425
425
|
],
|
|
426
|
-
"summary": "
|
|
427
|
-
"
|
|
426
|
+
"summary": "Read All",
|
|
427
|
+
"description": "Lists all API tokens. Secrets are never returned.",
|
|
428
|
+
"operationId": "read_all_tokens_get",
|
|
428
429
|
"responses": {
|
|
429
430
|
"200": {
|
|
430
431
|
"description": "Successful Response",
|
|
431
432
|
"content": {
|
|
432
433
|
"application/json": {
|
|
433
|
-
"schema": {
|
|
434
|
+
"schema": {
|
|
435
|
+
"items": {
|
|
436
|
+
"$ref": "#/components/schemas/TokenOut"
|
|
437
|
+
},
|
|
438
|
+
"type": "array",
|
|
439
|
+
"title": "Response Read All Tokens Get"
|
|
440
|
+
}
|
|
441
|
+
}
|
|
442
|
+
}
|
|
443
|
+
}
|
|
444
|
+
},
|
|
445
|
+
"security": [
|
|
446
|
+
{
|
|
447
|
+
"APIKeyHeader": []
|
|
448
|
+
}
|
|
449
|
+
]
|
|
450
|
+
},
|
|
451
|
+
"post": {
|
|
452
|
+
"tags": [
|
|
453
|
+
"tokens"
|
|
454
|
+
],
|
|
455
|
+
"summary": "Create",
|
|
456
|
+
"description": "Creates a new API token. The plaintext token is returned once and is not\nstored \u2014 save it now, it cannot be retrieved later.",
|
|
457
|
+
"operationId": "create_tokens_post",
|
|
458
|
+
"requestBody": {
|
|
459
|
+
"content": {
|
|
460
|
+
"application/json": {
|
|
461
|
+
"schema": {
|
|
462
|
+
"$ref": "#/components/schemas/TokenCreate"
|
|
463
|
+
}
|
|
464
|
+
}
|
|
465
|
+
},
|
|
466
|
+
"required": true
|
|
467
|
+
},
|
|
468
|
+
"responses": {
|
|
469
|
+
"201": {
|
|
470
|
+
"description": "Successful Response",
|
|
471
|
+
"content": {
|
|
472
|
+
"application/json": {
|
|
473
|
+
"schema": {
|
|
474
|
+
"$ref": "#/components/schemas/TokenWithSecret"
|
|
475
|
+
}
|
|
476
|
+
}
|
|
477
|
+
}
|
|
478
|
+
},
|
|
479
|
+
"422": {
|
|
480
|
+
"description": "Validation Error",
|
|
481
|
+
"content": {
|
|
482
|
+
"application/json": {
|
|
483
|
+
"schema": {
|
|
484
|
+
"$ref": "#/components/schemas/HTTPValidationError"
|
|
485
|
+
}
|
|
434
486
|
}
|
|
435
487
|
}
|
|
436
488
|
}
|
|
@@ -442,25 +494,245 @@
|
|
|
442
494
|
]
|
|
443
495
|
}
|
|
444
496
|
},
|
|
445
|
-
"/
|
|
497
|
+
"/tokens/{token_id}": {
|
|
446
498
|
"get": {
|
|
447
|
-
"
|
|
448
|
-
|
|
499
|
+
"tags": [
|
|
500
|
+
"tokens"
|
|
501
|
+
],
|
|
502
|
+
"summary": "Read One",
|
|
503
|
+
"description": "Retrieves a single API token by its id.",
|
|
504
|
+
"operationId": "read_one_tokens__token_id__get",
|
|
505
|
+
"security": [
|
|
506
|
+
{
|
|
507
|
+
"APIKeyHeader": []
|
|
508
|
+
}
|
|
509
|
+
],
|
|
510
|
+
"parameters": [
|
|
511
|
+
{
|
|
512
|
+
"name": "token_id",
|
|
513
|
+
"in": "path",
|
|
514
|
+
"required": true,
|
|
515
|
+
"schema": {
|
|
516
|
+
"type": "string",
|
|
517
|
+
"title": "Token Id"
|
|
518
|
+
}
|
|
519
|
+
}
|
|
520
|
+
],
|
|
449
521
|
"responses": {
|
|
450
522
|
"200": {
|
|
451
523
|
"description": "Successful Response",
|
|
452
524
|
"content": {
|
|
453
525
|
"application/json": {
|
|
454
|
-
"schema": {
|
|
526
|
+
"schema": {
|
|
527
|
+
"$ref": "#/components/schemas/TokenOut"
|
|
528
|
+
}
|
|
529
|
+
}
|
|
530
|
+
}
|
|
531
|
+
},
|
|
532
|
+
"422": {
|
|
533
|
+
"description": "Validation Error",
|
|
534
|
+
"content": {
|
|
535
|
+
"application/json": {
|
|
536
|
+
"schema": {
|
|
537
|
+
"$ref": "#/components/schemas/HTTPValidationError"
|
|
538
|
+
}
|
|
539
|
+
}
|
|
540
|
+
}
|
|
541
|
+
}
|
|
542
|
+
}
|
|
543
|
+
},
|
|
544
|
+
"patch": {
|
|
545
|
+
"tags": [
|
|
546
|
+
"tokens"
|
|
547
|
+
],
|
|
548
|
+
"summary": "Update",
|
|
549
|
+
"description": "Updates a token: rename, re-scope, renew (change expiry) or (de)activate it.\nDoes not rotate the secret.",
|
|
550
|
+
"operationId": "update_tokens__token_id__patch",
|
|
551
|
+
"security": [
|
|
552
|
+
{
|
|
553
|
+
"APIKeyHeader": []
|
|
554
|
+
}
|
|
555
|
+
],
|
|
556
|
+
"parameters": [
|
|
557
|
+
{
|
|
558
|
+
"name": "token_id",
|
|
559
|
+
"in": "path",
|
|
560
|
+
"required": true,
|
|
561
|
+
"schema": {
|
|
562
|
+
"type": "string",
|
|
563
|
+
"title": "Token Id"
|
|
564
|
+
}
|
|
565
|
+
}
|
|
566
|
+
],
|
|
567
|
+
"requestBody": {
|
|
568
|
+
"required": true,
|
|
569
|
+
"content": {
|
|
570
|
+
"application/json": {
|
|
571
|
+
"schema": {
|
|
572
|
+
"$ref": "#/components/schemas/TokenUpdate"
|
|
455
573
|
}
|
|
456
574
|
}
|
|
457
575
|
}
|
|
458
576
|
},
|
|
577
|
+
"responses": {
|
|
578
|
+
"200": {
|
|
579
|
+
"description": "Successful Response",
|
|
580
|
+
"content": {
|
|
581
|
+
"application/json": {
|
|
582
|
+
"schema": {
|
|
583
|
+
"$ref": "#/components/schemas/TokenOut"
|
|
584
|
+
}
|
|
585
|
+
}
|
|
586
|
+
}
|
|
587
|
+
},
|
|
588
|
+
"422": {
|
|
589
|
+
"description": "Validation Error",
|
|
590
|
+
"content": {
|
|
591
|
+
"application/json": {
|
|
592
|
+
"schema": {
|
|
593
|
+
"$ref": "#/components/schemas/HTTPValidationError"
|
|
594
|
+
}
|
|
595
|
+
}
|
|
596
|
+
}
|
|
597
|
+
}
|
|
598
|
+
}
|
|
599
|
+
},
|
|
600
|
+
"delete": {
|
|
601
|
+
"tags": [
|
|
602
|
+
"tokens"
|
|
603
|
+
],
|
|
604
|
+
"summary": "Remove",
|
|
605
|
+
"description": "Deletes an API token.",
|
|
606
|
+
"operationId": "remove_tokens__token_id__delete",
|
|
459
607
|
"security": [
|
|
460
608
|
{
|
|
461
609
|
"APIKeyHeader": []
|
|
462
610
|
}
|
|
463
|
-
]
|
|
611
|
+
],
|
|
612
|
+
"parameters": [
|
|
613
|
+
{
|
|
614
|
+
"name": "token_id",
|
|
615
|
+
"in": "path",
|
|
616
|
+
"required": true,
|
|
617
|
+
"schema": {
|
|
618
|
+
"type": "string",
|
|
619
|
+
"title": "Token Id"
|
|
620
|
+
}
|
|
621
|
+
}
|
|
622
|
+
],
|
|
623
|
+
"responses": {
|
|
624
|
+
"200": {
|
|
625
|
+
"description": "Successful Response",
|
|
626
|
+
"content": {
|
|
627
|
+
"application/json": {
|
|
628
|
+
"schema": {}
|
|
629
|
+
}
|
|
630
|
+
}
|
|
631
|
+
},
|
|
632
|
+
"422": {
|
|
633
|
+
"description": "Validation Error",
|
|
634
|
+
"content": {
|
|
635
|
+
"application/json": {
|
|
636
|
+
"schema": {
|
|
637
|
+
"$ref": "#/components/schemas/HTTPValidationError"
|
|
638
|
+
}
|
|
639
|
+
}
|
|
640
|
+
}
|
|
641
|
+
}
|
|
642
|
+
}
|
|
643
|
+
}
|
|
644
|
+
},
|
|
645
|
+
"/tokens/{token_id}/reactivate": {
|
|
646
|
+
"post": {
|
|
647
|
+
"tags": [
|
|
648
|
+
"tokens"
|
|
649
|
+
],
|
|
650
|
+
"summary": "Reactivate",
|
|
651
|
+
"description": "Reactivates a token, rotating its secret and returning the new plaintext.\nThe previous secret is invalidated immediately.",
|
|
652
|
+
"operationId": "reactivate_tokens__token_id__reactivate_post",
|
|
653
|
+
"security": [
|
|
654
|
+
{
|
|
655
|
+
"APIKeyHeader": []
|
|
656
|
+
}
|
|
657
|
+
],
|
|
658
|
+
"parameters": [
|
|
659
|
+
{
|
|
660
|
+
"name": "token_id",
|
|
661
|
+
"in": "path",
|
|
662
|
+
"required": true,
|
|
663
|
+
"schema": {
|
|
664
|
+
"type": "string",
|
|
665
|
+
"title": "Token Id"
|
|
666
|
+
}
|
|
667
|
+
}
|
|
668
|
+
],
|
|
669
|
+
"requestBody": {
|
|
670
|
+
"content": {
|
|
671
|
+
"application/json": {
|
|
672
|
+
"schema": {
|
|
673
|
+
"$ref": "#/components/schemas/TokenReactivate",
|
|
674
|
+
"default": {}
|
|
675
|
+
}
|
|
676
|
+
}
|
|
677
|
+
}
|
|
678
|
+
},
|
|
679
|
+
"responses": {
|
|
680
|
+
"200": {
|
|
681
|
+
"description": "Successful Response",
|
|
682
|
+
"content": {
|
|
683
|
+
"application/json": {
|
|
684
|
+
"schema": {
|
|
685
|
+
"$ref": "#/components/schemas/TokenWithSecret"
|
|
686
|
+
}
|
|
687
|
+
}
|
|
688
|
+
}
|
|
689
|
+
},
|
|
690
|
+
"422": {
|
|
691
|
+
"description": "Validation Error",
|
|
692
|
+
"content": {
|
|
693
|
+
"application/json": {
|
|
694
|
+
"schema": {
|
|
695
|
+
"$ref": "#/components/schemas/HTTPValidationError"
|
|
696
|
+
}
|
|
697
|
+
}
|
|
698
|
+
}
|
|
699
|
+
}
|
|
700
|
+
}
|
|
701
|
+
}
|
|
702
|
+
},
|
|
703
|
+
"/version": {
|
|
704
|
+
"get": {
|
|
705
|
+
"tags": [
|
|
706
|
+
"version"
|
|
707
|
+
],
|
|
708
|
+
"summary": "Version",
|
|
709
|
+
"operationId": "version_version_get",
|
|
710
|
+
"responses": {
|
|
711
|
+
"200": {
|
|
712
|
+
"description": "Successful Response",
|
|
713
|
+
"content": {
|
|
714
|
+
"application/json": {
|
|
715
|
+
"schema": {}
|
|
716
|
+
}
|
|
717
|
+
}
|
|
718
|
+
}
|
|
719
|
+
}
|
|
720
|
+
}
|
|
721
|
+
},
|
|
722
|
+
"/health": {
|
|
723
|
+
"get": {
|
|
724
|
+
"summary": "Health Check",
|
|
725
|
+
"operationId": "health_check_health_get",
|
|
726
|
+
"responses": {
|
|
727
|
+
"200": {
|
|
728
|
+
"description": "Successful Response",
|
|
729
|
+
"content": {
|
|
730
|
+
"application/json": {
|
|
731
|
+
"schema": {}
|
|
732
|
+
}
|
|
733
|
+
}
|
|
734
|
+
}
|
|
735
|
+
}
|
|
464
736
|
}
|
|
465
737
|
}
|
|
466
738
|
},
|
|
@@ -575,6 +847,285 @@
|
|
|
575
847
|
],
|
|
576
848
|
"title": "SitePaginated"
|
|
577
849
|
},
|
|
850
|
+
"TokenCreate": {
|
|
851
|
+
"properties": {
|
|
852
|
+
"name": {
|
|
853
|
+
"type": "string",
|
|
854
|
+
"title": "Name"
|
|
855
|
+
},
|
|
856
|
+
"scopes": {
|
|
857
|
+
"items": {
|
|
858
|
+
"type": "string"
|
|
859
|
+
},
|
|
860
|
+
"type": "array",
|
|
861
|
+
"title": "Scopes"
|
|
862
|
+
},
|
|
863
|
+
"expires_at": {
|
|
864
|
+
"anyOf": [
|
|
865
|
+
{
|
|
866
|
+
"type": "string",
|
|
867
|
+
"format": "date-time"
|
|
868
|
+
},
|
|
869
|
+
{
|
|
870
|
+
"type": "null"
|
|
871
|
+
}
|
|
872
|
+
],
|
|
873
|
+
"title": "Expires At"
|
|
874
|
+
}
|
|
875
|
+
},
|
|
876
|
+
"type": "object",
|
|
877
|
+
"required": [
|
|
878
|
+
"name",
|
|
879
|
+
"scopes"
|
|
880
|
+
],
|
|
881
|
+
"title": "TokenCreate"
|
|
882
|
+
},
|
|
883
|
+
"TokenOut": {
|
|
884
|
+
"properties": {
|
|
885
|
+
"id": {
|
|
886
|
+
"type": "string",
|
|
887
|
+
"title": "Id"
|
|
888
|
+
},
|
|
889
|
+
"name": {
|
|
890
|
+
"type": "string",
|
|
891
|
+
"title": "Name"
|
|
892
|
+
},
|
|
893
|
+
"prefix": {
|
|
894
|
+
"type": "string",
|
|
895
|
+
"title": "Prefix"
|
|
896
|
+
},
|
|
897
|
+
"scopes": {
|
|
898
|
+
"items": {
|
|
899
|
+
"type": "string"
|
|
900
|
+
},
|
|
901
|
+
"type": "array",
|
|
902
|
+
"title": "Scopes"
|
|
903
|
+
},
|
|
904
|
+
"is_active": {
|
|
905
|
+
"type": "boolean",
|
|
906
|
+
"title": "Is Active"
|
|
907
|
+
},
|
|
908
|
+
"active": {
|
|
909
|
+
"type": "boolean",
|
|
910
|
+
"title": "Active"
|
|
911
|
+
},
|
|
912
|
+
"expires_at": {
|
|
913
|
+
"anyOf": [
|
|
914
|
+
{
|
|
915
|
+
"type": "string",
|
|
916
|
+
"format": "date-time"
|
|
917
|
+
},
|
|
918
|
+
{
|
|
919
|
+
"type": "null"
|
|
920
|
+
}
|
|
921
|
+
],
|
|
922
|
+
"title": "Expires At"
|
|
923
|
+
},
|
|
924
|
+
"last_used_at": {
|
|
925
|
+
"anyOf": [
|
|
926
|
+
{
|
|
927
|
+
"type": "string",
|
|
928
|
+
"format": "date-time"
|
|
929
|
+
},
|
|
930
|
+
{
|
|
931
|
+
"type": "null"
|
|
932
|
+
}
|
|
933
|
+
],
|
|
934
|
+
"title": "Last Used At"
|
|
935
|
+
},
|
|
936
|
+
"created_at": {
|
|
937
|
+
"type": "string",
|
|
938
|
+
"format": "date-time",
|
|
939
|
+
"title": "Created At"
|
|
940
|
+
},
|
|
941
|
+
"updated_at": {
|
|
942
|
+
"anyOf": [
|
|
943
|
+
{
|
|
944
|
+
"type": "string",
|
|
945
|
+
"format": "date-time"
|
|
946
|
+
},
|
|
947
|
+
{
|
|
948
|
+
"type": "null"
|
|
949
|
+
}
|
|
950
|
+
],
|
|
951
|
+
"title": "Updated At"
|
|
952
|
+
}
|
|
953
|
+
},
|
|
954
|
+
"type": "object",
|
|
955
|
+
"required": [
|
|
956
|
+
"id",
|
|
957
|
+
"name",
|
|
958
|
+
"prefix",
|
|
959
|
+
"scopes",
|
|
960
|
+
"is_active",
|
|
961
|
+
"active",
|
|
962
|
+
"created_at"
|
|
963
|
+
],
|
|
964
|
+
"title": "TokenOut"
|
|
965
|
+
},
|
|
966
|
+
"TokenReactivate": {
|
|
967
|
+
"properties": {
|
|
968
|
+
"expires_at": {
|
|
969
|
+
"anyOf": [
|
|
970
|
+
{
|
|
971
|
+
"type": "string",
|
|
972
|
+
"format": "date-time"
|
|
973
|
+
},
|
|
974
|
+
{
|
|
975
|
+
"type": "null"
|
|
976
|
+
}
|
|
977
|
+
],
|
|
978
|
+
"title": "Expires At"
|
|
979
|
+
}
|
|
980
|
+
},
|
|
981
|
+
"type": "object",
|
|
982
|
+
"title": "TokenReactivate",
|
|
983
|
+
"description": "Reactivation rotates the secret; an optional new expiry may be set\n(null clears the expiry so the token never expires)."
|
|
984
|
+
},
|
|
985
|
+
"TokenUpdate": {
|
|
986
|
+
"properties": {
|
|
987
|
+
"name": {
|
|
988
|
+
"anyOf": [
|
|
989
|
+
{
|
|
990
|
+
"type": "string"
|
|
991
|
+
},
|
|
992
|
+
{
|
|
993
|
+
"type": "null"
|
|
994
|
+
}
|
|
995
|
+
],
|
|
996
|
+
"title": "Name"
|
|
997
|
+
},
|
|
998
|
+
"scopes": {
|
|
999
|
+
"anyOf": [
|
|
1000
|
+
{
|
|
1001
|
+
"items": {
|
|
1002
|
+
"type": "string"
|
|
1003
|
+
},
|
|
1004
|
+
"type": "array"
|
|
1005
|
+
},
|
|
1006
|
+
{
|
|
1007
|
+
"type": "null"
|
|
1008
|
+
}
|
|
1009
|
+
],
|
|
1010
|
+
"title": "Scopes"
|
|
1011
|
+
},
|
|
1012
|
+
"expires_at": {
|
|
1013
|
+
"anyOf": [
|
|
1014
|
+
{
|
|
1015
|
+
"type": "string",
|
|
1016
|
+
"format": "date-time"
|
|
1017
|
+
},
|
|
1018
|
+
{
|
|
1019
|
+
"type": "null"
|
|
1020
|
+
}
|
|
1021
|
+
],
|
|
1022
|
+
"title": "Expires At"
|
|
1023
|
+
},
|
|
1024
|
+
"is_active": {
|
|
1025
|
+
"anyOf": [
|
|
1026
|
+
{
|
|
1027
|
+
"type": "boolean"
|
|
1028
|
+
},
|
|
1029
|
+
{
|
|
1030
|
+
"type": "null"
|
|
1031
|
+
}
|
|
1032
|
+
],
|
|
1033
|
+
"title": "Is Active"
|
|
1034
|
+
}
|
|
1035
|
+
},
|
|
1036
|
+
"type": "object",
|
|
1037
|
+
"title": "TokenUpdate",
|
|
1038
|
+
"description": "Partial update (rename, re-scope, renew expiry, (de)activate).\n\nDoes not rotate the secret; use the reactivate endpoint for that."
|
|
1039
|
+
},
|
|
1040
|
+
"TokenWithSecret": {
|
|
1041
|
+
"properties": {
|
|
1042
|
+
"id": {
|
|
1043
|
+
"type": "string",
|
|
1044
|
+
"title": "Id"
|
|
1045
|
+
},
|
|
1046
|
+
"name": {
|
|
1047
|
+
"type": "string",
|
|
1048
|
+
"title": "Name"
|
|
1049
|
+
},
|
|
1050
|
+
"prefix": {
|
|
1051
|
+
"type": "string",
|
|
1052
|
+
"title": "Prefix"
|
|
1053
|
+
},
|
|
1054
|
+
"scopes": {
|
|
1055
|
+
"items": {
|
|
1056
|
+
"type": "string"
|
|
1057
|
+
},
|
|
1058
|
+
"type": "array",
|
|
1059
|
+
"title": "Scopes"
|
|
1060
|
+
},
|
|
1061
|
+
"is_active": {
|
|
1062
|
+
"type": "boolean",
|
|
1063
|
+
"title": "Is Active"
|
|
1064
|
+
},
|
|
1065
|
+
"active": {
|
|
1066
|
+
"type": "boolean",
|
|
1067
|
+
"title": "Active"
|
|
1068
|
+
},
|
|
1069
|
+
"expires_at": {
|
|
1070
|
+
"anyOf": [
|
|
1071
|
+
{
|
|
1072
|
+
"type": "string",
|
|
1073
|
+
"format": "date-time"
|
|
1074
|
+
},
|
|
1075
|
+
{
|
|
1076
|
+
"type": "null"
|
|
1077
|
+
}
|
|
1078
|
+
],
|
|
1079
|
+
"title": "Expires At"
|
|
1080
|
+
},
|
|
1081
|
+
"last_used_at": {
|
|
1082
|
+
"anyOf": [
|
|
1083
|
+
{
|
|
1084
|
+
"type": "string",
|
|
1085
|
+
"format": "date-time"
|
|
1086
|
+
},
|
|
1087
|
+
{
|
|
1088
|
+
"type": "null"
|
|
1089
|
+
}
|
|
1090
|
+
],
|
|
1091
|
+
"title": "Last Used At"
|
|
1092
|
+
},
|
|
1093
|
+
"created_at": {
|
|
1094
|
+
"type": "string",
|
|
1095
|
+
"format": "date-time",
|
|
1096
|
+
"title": "Created At"
|
|
1097
|
+
},
|
|
1098
|
+
"updated_at": {
|
|
1099
|
+
"anyOf": [
|
|
1100
|
+
{
|
|
1101
|
+
"type": "string",
|
|
1102
|
+
"format": "date-time"
|
|
1103
|
+
},
|
|
1104
|
+
{
|
|
1105
|
+
"type": "null"
|
|
1106
|
+
}
|
|
1107
|
+
],
|
|
1108
|
+
"title": "Updated At"
|
|
1109
|
+
},
|
|
1110
|
+
"token": {
|
|
1111
|
+
"type": "string",
|
|
1112
|
+
"title": "Token"
|
|
1113
|
+
}
|
|
1114
|
+
},
|
|
1115
|
+
"type": "object",
|
|
1116
|
+
"required": [
|
|
1117
|
+
"id",
|
|
1118
|
+
"name",
|
|
1119
|
+
"prefix",
|
|
1120
|
+
"scopes",
|
|
1121
|
+
"is_active",
|
|
1122
|
+
"active",
|
|
1123
|
+
"created_at",
|
|
1124
|
+
"token"
|
|
1125
|
+
],
|
|
1126
|
+
"title": "TokenWithSecret",
|
|
1127
|
+
"description": "Returned only on creation and reactivation: carries the plaintext token,\nwhich is never stored and cannot be retrieved again."
|
|
1128
|
+
},
|
|
578
1129
|
"ValidationError": {
|
|
579
1130
|
"properties": {
|
|
580
1131
|
"loc": {
|