diff --git a/packages/twenty-server/src/engine/core-modules/workflow/resolvers/workflow-trigger.resolver.ts b/packages/twenty-server/src/engine/core-modules/workflow/resolvers/workflow-trigger.resolver.ts index f45d143cda..a9c628d383 100644 --- a/packages/twenty-server/src/engine/core-modules/workflow/resolvers/workflow-trigger.resolver.ts +++ b/packages/twenty-server/src/engine/core-modules/workflow/resolvers/workflow-trigger.resolver.ts @@ -2,6 +2,11 @@ import { UseFilters, UseGuards, UsePipes } from '@nestjs/common'; import { Args, Mutation } from '@nestjs/graphql'; import { PermissionFlagType } from 'twenty-shared/constants'; +import { + WORKFLOW_TRIGGER_METADATA_KEY, + WORKFLOW_TRIGGER_METADATA_WORKSPACE_MEMBER_ID_KEY, + WORKFLOW_TRIGGER_PAYLOAD_KEY, +} from 'twenty-shared/workflow'; import { CoreResolver } from 'src/engine/api/graphql/graphql-config/decorators/core-resolver.decorator'; import { UUIDScalarType } from 'src/engine/api/graphql/workspace-schema-builder/graphql-types/scalars'; @@ -98,7 +103,14 @@ export class WorkflowTriggerResolver { return this.workflowTriggerWorkspaceService.runWorkflowVersion({ workflowVersionId, workflowRunId: workflowRunId ?? undefined, - payload: payload ?? {}, + payload: { + ...(payload ?? {}), + [WORKFLOW_TRIGGER_PAYLOAD_KEY]: { ...(payload ?? {}) }, + [WORKFLOW_TRIGGER_METADATA_KEY]: { + [WORKFLOW_TRIGGER_METADATA_WORKSPACE_MEMBER_ID_KEY]: + workspaceMember.id, + }, + }, createdBy: buildCreatedByFromFullNameMetadata({ fullNameMetadata: { firstName: workspaceMember.name.firstName, diff --git a/packages/twenty-shared/src/workflow/constants/WorkflowTriggerMetadataKey.ts b/packages/twenty-shared/src/workflow/constants/WorkflowTriggerMetadataKey.ts new file mode 100644 index 0000000000..d7f3593358 --- /dev/null +++ b/packages/twenty-shared/src/workflow/constants/WorkflowTriggerMetadataKey.ts @@ -0,0 +1 @@ +export const WORKFLOW_TRIGGER_METADATA_KEY = 'metadata'; diff --git a/packages/twenty-shared/src/workflow/constants/WorkflowTriggerMetadataWorkspaceMemberIdKey.ts b/packages/twenty-shared/src/workflow/constants/WorkflowTriggerMetadataWorkspaceMemberIdKey.ts new file mode 100644 index 0000000000..8414159abe --- /dev/null +++ b/packages/twenty-shared/src/workflow/constants/WorkflowTriggerMetadataWorkspaceMemberIdKey.ts @@ -0,0 +1,2 @@ +export const WORKFLOW_TRIGGER_METADATA_WORKSPACE_MEMBER_ID_KEY = + 'workspaceMemberId'; diff --git a/packages/twenty-shared/src/workflow/constants/WorkflowTriggerPayloadKey.ts b/packages/twenty-shared/src/workflow/constants/WorkflowTriggerPayloadKey.ts new file mode 100644 index 0000000000..481566c1e9 --- /dev/null +++ b/packages/twenty-shared/src/workflow/constants/WorkflowTriggerPayloadKey.ts @@ -0,0 +1 @@ +export const WORKFLOW_TRIGGER_PAYLOAD_KEY = 'payload'; diff --git a/packages/twenty-shared/src/workflow/index.ts b/packages/twenty-shared/src/workflow/index.ts index 07484acba5..41e92d6af5 100644 --- a/packages/twenty-shared/src/workflow/index.ts +++ b/packages/twenty-shared/src/workflow/index.ts @@ -12,6 +12,9 @@ export { CONTENT_TYPE_VALUES_HTTP_REQUEST } from './constants/ContentTypeValuesH export { IF_ELSE_BRANCH_POSITION_OFFSETS } from './constants/IfElseBranchPositionOffsets'; export { OBJECTS_BLOCKED_FROM_AUTOMATION } from './constants/ObjectsBlockedFromAutomation'; export { TRIGGER_STEP_ID } from './constants/TriggerStepId'; +export { WORKFLOW_TRIGGER_METADATA_KEY } from './constants/WorkflowTriggerMetadataKey'; +export { WORKFLOW_TRIGGER_METADATA_WORKSPACE_MEMBER_ID_KEY } from './constants/WorkflowTriggerMetadataWorkspaceMemberIdKey'; +export { WORKFLOW_TRIGGER_PAYLOAD_KEY } from './constants/WorkflowTriggerPayloadKey'; export { workflowAiAgentActionSchema } from './schemas/ai-agent-action-schema'; export { workflowAiAgentActionSettingsSchema } from './schemas/ai-agent-action-settings-schema'; export { baseTriggerSchema } from './schemas/base-trigger-schema';