Flowise

Форк
0
76 строк · 2.7 Кб
1
import { Request, Response, NextFunction } from 'express'
2
import { StatusCodes } from 'http-status-codes'
3
import { InternalFlowiseError } from '../../errors/internalFlowiseError'
4
import apikeyService from '../../services/apikey'
5

6
// Get api keys
7
const getAllApiKeys = async (req: Request, res: Response, next: NextFunction) => {
8
    try {
9
        const apiResponse = await apikeyService.getAllApiKeys()
10
        return res.json(apiResponse)
11
    } catch (error) {
12
        next(error)
13
    }
14
}
15

16
const createApiKey = async (req: Request, res: Response, next: NextFunction) => {
17
    try {
18
        if (typeof req.body === 'undefined' || !req.body.keyName) {
19
            throw new InternalFlowiseError(StatusCodes.PRECONDITION_FAILED, `Error: apikeyController.createApiKey - keyName not provided!`)
20
        }
21
        const apiResponse = await apikeyService.createApiKey(req.body.keyName)
22
        return res.json(apiResponse)
23
    } catch (error) {
24
        next(error)
25
    }
26
}
27

28
// Update api key
29
const updateApiKey = async (req: Request, res: Response, next: NextFunction) => {
30
    try {
31
        if (typeof req.params === 'undefined' || !req.params.id) {
32
            throw new InternalFlowiseError(StatusCodes.PRECONDITION_FAILED, `Error: apikeyController.updateApiKey - id not provided!`)
33
        }
34
        if (typeof req.body === 'undefined' || !req.body.keyName) {
35
            throw new InternalFlowiseError(StatusCodes.PRECONDITION_FAILED, `Error: apikeyController.updateApiKey - keyName not provided!`)
36
        }
37
        const apiResponse = await apikeyService.updateApiKey(req.params.id, req.body.keyName)
38
        return res.json(apiResponse)
39
    } catch (error) {
40
        next(error)
41
    }
42
}
43

44
// Delete api key
45
const deleteApiKey = async (req: Request, res: Response, next: NextFunction) => {
46
    try {
47
        if (typeof req.params === 'undefined' || !req.params.id) {
48
            throw new InternalFlowiseError(StatusCodes.PRECONDITION_FAILED, `Error: apikeyController.deleteApiKey - id not provided!`)
49
        }
50
        const apiResponse = await apikeyService.deleteApiKey(req.params.id)
51
        return res.json(apiResponse)
52
    } catch (error) {
53
        next(error)
54
    }
55
}
56

57
// Verify api key
58
const verifyApiKey = async (req: Request, res: Response, next: NextFunction) => {
59
    try {
60
        if (typeof req.params === 'undefined' || !req.params.apiKey) {
61
            throw new InternalFlowiseError(StatusCodes.PRECONDITION_FAILED, `Error: apikeyController.verifyApiKey - apiKey not provided!`)
62
        }
63
        const apiResponse = await apikeyService.verifyApiKey(req.params.apiKey)
64
        return res.json(apiResponse)
65
    } catch (error) {
66
        next(error)
67
    }
68
}
69

70
export default {
71
    createApiKey,
72
    deleteApiKey,
73
    getAllApiKeys,
74
    updateApiKey,
75
    verifyApiKey
76
}
77

Использование cookies

Мы используем файлы cookie в соответствии с Политикой конфиденциальности и Политикой использования cookies.

Нажимая кнопку «Принимаю», Вы даете АО «СберТех» согласие на обработку Ваших персональных данных в целях совершенствования нашего веб-сайта и Сервиса GitVerse, а также повышения удобства их использования.

Запретить использование cookies Вы можете самостоятельно в настройках Вашего браузера.