add zapier integration
This commit is contained in:
parent
4e36be3214
commit
dd8b59abb8
|
|
@ -36,7 +36,8 @@ import {
|
|||
replaceAllAPIKeys,
|
||||
isFlowValidForStream,
|
||||
isVectorStoreFaiss,
|
||||
databaseEntities
|
||||
databaseEntities,
|
||||
getApiKey
|
||||
} from './utils'
|
||||
import { cloneDeep } from 'lodash'
|
||||
import { getDataSource } from './DataSource'
|
||||
|
|
@ -177,6 +178,24 @@ export class App {
|
|||
return res.json(chatflows)
|
||||
})
|
||||
|
||||
// Get specific chatflow via api key
|
||||
this.app.get('/api/v1/chatflows/apikey/:apiKey', async (req: Request, res: Response) => {
|
||||
try {
|
||||
const apiKey = await getApiKey(req.params.apiKey)
|
||||
if (!apiKey) return res.status(401).send('Unauthorized')
|
||||
const chatflows = await this.AppDataSource.getRepository(ChatFlow)
|
||||
.createQueryBuilder('cf')
|
||||
.where('cf.apikeyid = :apikeyid', { apikeyid: apiKey.id })
|
||||
.orWhere('cf.apikeyid IS NULL')
|
||||
.orderBy('cf.name', 'ASC')
|
||||
.getMany()
|
||||
if (chatflows.length >= 1) return res.status(200).send(chatflows)
|
||||
return res.status(404).send('Chatflow not found')
|
||||
} catch (err: any) {
|
||||
return res.status(500).send(err?.message)
|
||||
}
|
||||
})
|
||||
|
||||
// Get specific chatflow via id
|
||||
this.app.get('/api/v1/chatflows/:id', async (req: Request, res: Response) => {
|
||||
const chatflow = await this.AppDataSource.getRepository(ChatFlow).findOneBy({
|
||||
|
|
@ -472,6 +491,17 @@ export class App {
|
|||
return res.json(keys)
|
||||
})
|
||||
|
||||
// Verify api key
|
||||
this.app.get('/api/v1/apikey/:apiKey', async (req: Request, res: Response) => {
|
||||
try {
|
||||
const apiKey = await getApiKey(req.params.apiKey)
|
||||
if (!apiKey) return res.status(401).send('Unauthorized')
|
||||
return res.status(200).send('OK')
|
||||
} catch (err: any) {
|
||||
return res.status(500).send(err?.message)
|
||||
}
|
||||
})
|
||||
|
||||
// ----------------------------------------
|
||||
// Serve UI static
|
||||
// ----------------------------------------
|
||||
|
|
|
|||
|
|
@ -547,6 +547,18 @@ export const addAPIKey = async (keyName: string): Promise<ICommonObject[]> => {
|
|||
return content
|
||||
}
|
||||
|
||||
/**
|
||||
* Get API Key details
|
||||
* @param {string} apiKey
|
||||
* @returns {Promise<ICommonObject[]>}
|
||||
*/
|
||||
export const getApiKey = async (apiKey: string) => {
|
||||
const existingAPIKeys = await getAPIKeys()
|
||||
const keyIndex = existingAPIKeys.findIndex((key) => key.apiKey === apiKey)
|
||||
if (keyIndex < 0) return undefined
|
||||
return existingAPIKeys[keyIndex]
|
||||
}
|
||||
|
||||
/**
|
||||
* Update existing API key
|
||||
* @param {string} keyIdToUpdate
|
||||
|
|
|
|||
Loading…
Reference in New Issue