summaryrefslogtreecommitdiff
path: root/src/server/api/endpoints/admin
diff options
context:
space:
mode:
Diffstat (limited to 'src/server/api/endpoints/admin')
-rw-r--r--src/server/api/endpoints/admin/relays/add.ts24
-rw-r--r--src/server/api/endpoints/admin/relays/list.ts20
-rw-r--r--src/server/api/endpoints/admin/relays/remove.ts24
3 files changed, 68 insertions, 0 deletions
diff --git a/src/server/api/endpoints/admin/relays/add.ts b/src/server/api/endpoints/admin/relays/add.ts
new file mode 100644
index 0000000000..3ea6bcc73b
--- /dev/null
+++ b/src/server/api/endpoints/admin/relays/add.ts
@@ -0,0 +1,24 @@
+import $ from 'cafy';
+import define from '../../../define';
+import { addRelay } from '../../../../../services/relay';
+
+export const meta = {
+ desc: {
+ 'ja-JP': 'Add relay'
+ },
+
+ tags: ['admin'],
+
+ requireCredential: true as const,
+ requireModerator: true as const,
+
+ params: {
+ inbox: {
+ validator: $.str
+ },
+ },
+};
+
+export default define(meta, async (ps, user) => {
+ return await addRelay(ps.inbox);
+});
diff --git a/src/server/api/endpoints/admin/relays/list.ts b/src/server/api/endpoints/admin/relays/list.ts
new file mode 100644
index 0000000000..3b132f73b3
--- /dev/null
+++ b/src/server/api/endpoints/admin/relays/list.ts
@@ -0,0 +1,20 @@
+import define from '../../../define';
+import { listRelay } from '../../../../../services/relay';
+
+export const meta = {
+ desc: {
+ 'ja-JP': 'List relay'
+ },
+
+ tags: ['admin'],
+
+ requireCredential: true as const,
+ requireModerator: true as const,
+
+ params: {
+ },
+};
+
+export default define(meta, async (ps, user) => {
+ return await listRelay();
+});
diff --git a/src/server/api/endpoints/admin/relays/remove.ts b/src/server/api/endpoints/admin/relays/remove.ts
new file mode 100644
index 0000000000..df95e0329a
--- /dev/null
+++ b/src/server/api/endpoints/admin/relays/remove.ts
@@ -0,0 +1,24 @@
+import $ from 'cafy';
+import define from '../../../define';
+import { removeRelay } from '../../../../../services/relay';
+
+export const meta = {
+ desc: {
+ 'ja-JP': 'Remove relay'
+ },
+
+ tags: ['admin'],
+
+ requireCredential: true as const,
+ requireModerator: true as const,
+
+ params: {
+ inbox: {
+ validator: $.str
+ },
+ },
+};
+
+export default define(meta, async (ps, user) => {
+ return await removeRelay(ps.inbox);
+});