aboutsummaryrefslogtreecommitdiffstats
path: root/code/app
diff options
context:
space:
mode:
Diffstat (limited to 'code/app')
-rw-r--r--code/app/src/lib/api/api-tokens/index.ts23
1 files changed, 23 insertions, 0 deletions
diff --git a/code/app/src/lib/api/api-tokens/index.ts b/code/app/src/lib/api/api-tokens/index.ts
new file mode 100644
index 0000000..77bfd91
--- /dev/null
+++ b/code/app/src/lib/api/api-tokens/index.ts
@@ -0,0 +1,23 @@
+import {http_delete_async, http_get_async, http_post_async} from "src/lib/api/_fetch";
+import {api_base} from "src/lib/configuration";
+import type {Temporal} from "temporal-polyfill";
+
+export const http_api_tokens = {
+ create_token_async(payload: CreateTokenPayload): Promise<Response> {
+ return http_post_async(api_base("v1/api-tokens/create"), payload);
+ },
+ delete_token_async(id: string): Promise<Response> {
+ return http_delete_async(api_base("v1/api-tokens/delete?id=" + id));
+ },
+ get_tokens_async(): Promise<Response> {
+ return http_get_async(api_base("v1/api-tokens"))
+ },
+};
+
+export type CreateTokenPayload = {
+ expiryDate: Temporal.PlainDateTime,
+ allowRead: boolean,
+ allowCreate: boolean,
+ allowUpdate: boolean,
+ allowDelete: boolean
+} \ No newline at end of file