Processing steps handle the core computational and transformation logic in your workflows.

Model Step

Model steps leverage AI models to generate text, analyze content, and produce structured outputs based on your prompts and instructions.

Configuration

  • Model: Select a model or use Auto to automatically choose the best model
  • System Prompt: Instructions that guide the model’s behavior
  • Prompts: The main input to the model, can include variables from previous steps, including system, user, and assistant prompts
  • Response Format: Text or JSON (use JSON when expecting structured data)
  • Temperature: Controls randomness (lower values = more deterministic responses)
  • JSON Editor: Optional editor for configuring messages as JSON
  • Web Search: Enable web search for the model before generating a response. This gives the model access to the latest information. Note that not all models support web search - this option will only appear if the selected model supports it.

You might see some Tools and Iteration options in the model step settings. These are related to Workflow Agents, which we will cover in the Agents section.

Output

// When response format is Text
modelStep.output.message; // Text string response

// When response format is JSON
modelStep.output.message.propertyName; // Direct access to JSON properties

Bring Your Own Model (BYOM)

Cortex allows you to connect your own AI provider accounts to use their models in your workflows.

To connect your own AI provider:

  1. Click “Connect Provider” in the model selection dropdown
  2. Select a provider from the modal (OpenAI, Anthropic, Google AI, Azure AI, xAI, Open Router, Groq, etc.)
  3. Enter the required configuration details (e.g., API Key)
  4. Click “Test Connection” to verify your credentials
  5. Click “Add Integration” to complete the setup

Once connected, all models from that provider will be available in the model selector.

You can manage all your integrations including AI providers in the Cortex Settings.

Code Step

Code steps execute JavaScript to transform data, perform calculations, or custom logic.

Configuration

  • JavaScript (ES6+) code editor with syntax highlighting
  • Direct access to other step outputs (no need for {{}} syntax)
  • No external imports, async/await, or browser/Node.js APIs

Example

// Transform data from previous steps
const items = httpStep.output.body.items;
const filteredItems = items.filter((item) => item.price > 100);

// Return any data type - becomes the step output
return {
  filtered: filteredItems,
  count: filteredItems.length,
};

Output

Accessed as codeStep.output (whatever was returned from the code)

HTTP Request Step

HTTP Request steps connect to external APIs and services.

Configuration

  • Method: GET, POST, PUT, DELETE, etc.
  • URL: API endpoint, can include variables
  • Headers: HTTP headers as JSON, can include variables
  • Body: Request payload as JSON, can include variables

Output

httpStep.output.status; // HTTP status code
httpStep.output.headers; // Response headers
httpStep.output.body; // Response body (object if JSON, string otherwise)

Browser Step

Browser steps interact with web pages to extract information.

Configuration

  • URL: The web page to navigate to
  • Selector: CSS selector to wait for before extracting content
  • Strip HTML: Remove HTML tags from selected content to return plain text

Output

browserStep.output.ok; // Success status
browserStep.output.body; // Page content
browserStep.output.headers; // Page headers

Workflow Step

Workflow steps execute another workflow from within the current workflow.

Configuration

  • Workflow: Select another workflow to run
  • Input: Map inputs from current workflow to the target workflow

Output

workflowStep.output.result; // The output of the last step in the called workflow