# Workflow\.sleepUntil() The `.sleepUntil()` method pauses execution until a specified date. ## Usage example ```typescript workflow.sleepUntil(new Date(Date.now() + 5000)); ``` ## Parameters **dateOrCallback:** (`Date | ((params: ExecuteFunctionParams) => Promise)`): Either a Date object or a callback function that returns a Date. The callback receives execution context and can compute the target time dynamically based on input data. ## Returns **workflow:** (`Workflow`): The workflow instance for method chaining ## Extended usage example ```typescript import { createWorkflow, createStep } from "@mastra/core/workflows"; const step1 = createStep({...}); const step2 = createStep({...}); export const testWorkflow = createWorkflow({...}) .then(step1) .sleepUntil(async ({ inputData }) => { const { delayInMs } = inputData; return new Date(Date.now() + delayInMs); }) .then(step2) .commit(); ```