diff --git a/apps/webapp/app/services/messageBroker.server.ts b/apps/webapp/app/services/messageBroker.server.ts index 1d4f04cc1..7ac291d8a 100644 --- a/apps/webapp/app/services/messageBroker.server.ts +++ b/apps/webapp/app/services/messageBroker.server.ts @@ -688,6 +688,7 @@ function createTaskQueue() { "x-workflow-run-id": run.id, "x-ttl": run.workflow.triggerTtlInSeconds, "x-is-test": run.isTest ? "true" : "false", + "x-app-origin": env.APP_ORIGIN, }, { eventTimestamp: run.event.timestamp.getTime(), diff --git a/apps/wss/src/runController.ts b/apps/wss/src/runController.ts index 6a68016c7..c009b7819 100644 --- a/apps/wss/src/runController.ts +++ b/apps/wss/src/runController.ts @@ -25,6 +25,7 @@ export type WorkflowRunControllerOptions = { apiKey: string; organizationId: string; isTest: boolean; + appOrigin: string; }; }; @@ -39,6 +40,7 @@ export class WorkflowRunController { apiKey: string; organizationId: string; isTest: boolean; + appOrigin: string; }; #logger: Logger; diff --git a/apps/wss/src/server.ts b/apps/wss/src/server.ts index 2cf874cda..4c663d628 100644 --- a/apps/wss/src/server.ts +++ b/apps/wss/src/server.ts @@ -420,6 +420,7 @@ export class TriggerServer { organizationId: properties["x-org-id"], environment: properties["x-env"], apiKey: properties["x-api-key"], + appOrigin: properties["x-app-origin"], isTest: typeof properties["x-is-test"] === "string" ? properties["x-is-test"] === "true" diff --git a/packages/internal-bridge/src/schemas/host.ts b/packages/internal-bridge/src/schemas/host.ts index 2209197e7..152190eee 100644 --- a/packages/internal-bridge/src/schemas/host.ts +++ b/packages/internal-bridge/src/schemas/host.ts @@ -15,6 +15,7 @@ export const HostRPCSchema = { organizationId: z.string(), apiKey: z.string(), isTest: z.boolean().default(false), + appOrigin: z.string(), }), }), response: z.boolean(), diff --git a/packages/internal-platform/src/messages/catalogs/triggers.ts b/packages/internal-platform/src/messages/catalogs/triggers.ts index 53a6d02fe..4495dab32 100644 --- a/packages/internal-platform/src/messages/catalogs/triggers.ts +++ b/packages/internal-platform/src/messages/catalogs/triggers.ts @@ -8,6 +8,7 @@ const Catalog = { properties: WorkflowRunEventPropertiesSchema.extend({ "x-ttl": z.coerce.number().optional(), "x-is-test": z.string().default("false"), + "x-app-origin": z.string().default("https://app.trigger.dev"), }), }, }; diff --git a/packages/trigger-sdk/src/client.ts b/packages/trigger-sdk/src/client.ts index de8b6bad7..327ed5ad5 100644 --- a/packages/trigger-sdk/src/client.ts +++ b/packages/trigger-sdk/src/client.ts @@ -469,6 +469,8 @@ export class TriggerClient { }); }, fetch: fetchFunction, + workflowId: data.meta.workflowId, + appOrigin: data.meta.appOrigin, }, () => { this.#logger.debug("Running trigger..."); diff --git a/packages/trigger-sdk/src/localStorage.ts b/packages/trigger-sdk/src/localStorage.ts index 2a61f4177..100abae43 100644 --- a/packages/trigger-sdk/src/localStorage.ts +++ b/packages/trigger-sdk/src/localStorage.ts @@ -18,6 +18,8 @@ type TriggerRunLocalStorage = { ) => Promise>; sendEvent: (key: string, event: TriggerCustomEvent) => Promise; fetch: TriggerFetch; + workflowId: string; + appOrigin: string; }; export const triggerRunLocalStorage =