Skip to main content
Glama
template-parser.ts1.3 kB
import { FlowVersionTemplate, Template } from '@activepieces/shared'; export const templateUtils = { parseTemplate: (jsonString: string): Template | null => { try { const parsed = JSON.parse(jsonString); let template: Template; if ( parsed.flows && Array.isArray(parsed.flows) && parsed.flows.length > 0 ) { template = parsed as Template; } else if (parsed.template && parsed.name) { template = { ...parsed, flows: [parsed.template], } as Template; delete (template as any).template; } else { return null; } const { flows, name } = template; if (!flows?.[0] || !name || !flows[0].trigger) { return null; } return template; } catch { return null; } }, extractFlow: (jsonString: string): FlowVersionTemplate | null => { try { const parsed = JSON.parse(jsonString); if ( parsed.flows && Array.isArray(parsed.flows) && parsed.flows.length > 0 ) { return parsed.flows[0] as FlowVersionTemplate; } else if (parsed.template) { return parsed.template as FlowVersionTemplate; } return null; } catch { return null; } }, };

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/activepieces/activepieces'

If you have feedback or need assistance with the MCP directory API, please join our Discord server