diff options
| author | syuilo <syuilotan@yahoo.co.jp> | 2020-10-27 16:45:14 +0900 |
|---|---|---|
| committer | syuilo <syuilotan@yahoo.co.jp> | 2020-10-27 16:45:14 +0900 |
| commit | d8933c135fb1a579c959dcc06c74f5eab12a747d (patch) | |
| tree | dfe262075bfc9bfdeb8fd5a5195d2daa453a6d7e /src/server/api/endpoints/admin | |
| parent | Better favicon detection (diff) | |
| download | sharkey-d8933c135fb1a579c959dcc06c74f5eab12a747d.tar.gz sharkey-d8933c135fb1a579c959dcc06c74f5eab12a747d.tar.bz2 sharkey-d8933c135fb1a579c959dcc06c74f5eab12a747d.zip | |
リモートインスタンス情報を強制更新するAPIを追加
Diffstat (limited to 'src/server/api/endpoints/admin')
| -rw-r--r-- | src/server/api/endpoints/admin/federation/refresh-remote-instance-metadata.ts | 28 |
1 files changed, 28 insertions, 0 deletions
diff --git a/src/server/api/endpoints/admin/federation/refresh-remote-instance-metadata.ts b/src/server/api/endpoints/admin/federation/refresh-remote-instance-metadata.ts new file mode 100644 index 0000000000..923a5f52cb --- /dev/null +++ b/src/server/api/endpoints/admin/federation/refresh-remote-instance-metadata.ts @@ -0,0 +1,28 @@ +import $ from 'cafy'; +import define from '../../../define'; +import { Instances } from '../../../../../models'; +import { toPuny } from '../../../../../misc/convert-host'; +import { fetchInstanceMetadata } from '../../../../../services/fetch-instance-metadata'; + +export const meta = { + tags: ['admin'], + + requireCredential: true as const, + requireModerator: true, + + params: { + host: { + validator: $.str + }, + } +}; + +export default define(meta, async (ps, me) => { + const instance = await Instances.findOne({ host: toPuny(ps.host) }); + + if (instance == null) { + throw new Error('instance not found'); + } + + fetchInstanceMetadata(instance, true); +}); |