Skip to main content
Glama

mcp-google-sheets

flow-service-side-effects.ts2.22 kB
import { FileType, Flow, FlowStatus, FlowVersion, isNil, } from '@activepieces/shared' import { FastifyBaseLogger } from 'fastify' import { triggerSourceService } from '../../trigger/trigger-source/trigger-source-service' import { sampleDataService } from '../step-run/sample-data.service' export const flowSideEffects = (log: FastifyBaseLogger) => ({ async preUpdateStatus({ newStatus, flowToUpdate, publishedFlowVersion, }: PreUpdateStatusParams): Promise<void> { switch (newStatus) { case FlowStatus.ENABLED: { await triggerSourceService(log).enable({ flowVersion: publishedFlowVersion, projectId: flowToUpdate.projectId, simulate: false, }) break } case FlowStatus.DISABLED: { await triggerSourceService(log).disable({ flowId: publishedFlowVersion.flowId, projectId: flowToUpdate.projectId, simulate: false, ignoreError: false, }) break } } }, async preDelete({ flowToDelete }: PreDeleteParams): Promise<void> { if ( flowToDelete.status === FlowStatus.DISABLED || isNil(flowToDelete.publishedVersionId) ) { return } await triggerSourceService(log).disable({ flowId: flowToDelete.id, projectId: flowToDelete.projectId, simulate: false, ignoreError: true, }) await sampleDataService(log).deleteForFlow({ projectId: flowToDelete.projectId, flowId: flowToDelete.id, fileType: FileType.SAMPLE_DATA, }) await sampleDataService(log).deleteForFlow({ projectId: flowToDelete.projectId, flowId: flowToDelete.id, fileType: FileType.SAMPLE_DATA_INPUT, }) }, }) type PreUpdateStatusParams = { flowToUpdate: Flow publishedFlowVersion: FlowVersion newStatus: FlowStatus } type PreDeleteParams = { flowToDelete: Flow }

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