> ## Documentation Index
> Fetch the complete documentation index at: https://docs.walead.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# Update Step

> Updates step delay and/or generic body message template

## Overview

Updates the configuration of a step in your campaign sequence. You can modify the delay between steps and set a generic message template.

## Updatable Fields

### delay

The number of days to wait before executing this step after the previous one completes.

**Example**: If step 1 is an invitation and step 2 is a message with `delay: 3`, the message will be sent 3 days after the invitation is accepted.

### genericBody

A generic message template that can be used as a fallback or default for the step. This is particularly useful for:

* Setting a base message that variants can build upon
* Providing a default when all variants are disabled
* Documenting the intended message purpose

## Request Body

You can update one or both fields:

```json theme={null}
{
  "delay": 5,
  "genericBody": "Hi {{firstName}}, thanks for connecting!"
}
```

## Variable Support

The `genericBody` field supports WaLead template variables:

* Core variables: `{{firstName}}`, `{{lastName}}`, `{{companyName}}`, etc.
* Custom variables: Any custom fields you've defined for your leads

## Use Cases

* Adjust timing between steps based on campaign performance
* Set fallback messages for steps with multiple variants
* Quickly modify delays without recreating the entire sequence


## OpenAPI

````yaml PUT /v1/campaigns/{id}/steps/{stepId}
openapi: 3.1.0
info:
  title: WaLead API
  description: >-
    WaLead Public API for managing LinkedIn outreach campaigns, leads, and
    analytics
  version: 1.0.0
  contact:
    name: WaLead Support
    url: https://walead.ai
servers:
  - url: https://app-api.walead.ai/api
    description: Production server
security:
  - apiKeyAuth: []
paths:
  /v1/campaigns/{id}/steps/{stepId}:
    put:
      summary: Update Step
      description: Updates step delay and/or generic body message template
      parameters:
        - name: id
          in: path
          description: Campaign ID
          required: true
          schema:
            type: string
        - name: stepId
          in: path
          description: Step ID
          required: true
          schema:
            type: string
      requestBody:
        description: Step update data
        required: true
        content:
          application/json:
            schema:
              type: object
              properties:
                delay:
                  type: integer
                  description: Delay in days before executing this step
                genericBody:
                  type: string
                  description: Generic message template for the step
      responses:
        '200':
          description: Step updated successfully
          content:
            application/json:
              schema:
                type: object
                properties:
                  success:
                    type: boolean
                  message:
                    type: string
        '401':
          description: Unauthorized - Invalid API Key
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '404':
          description: Campaign or step not found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
components:
  schemas:
    Error:
      type: object
      required:
        - statusCode
        - message
      properties:
        statusCode:
          type: integer
          description: HTTP status code
        message:
          type: string
          description: Error message
  securitySchemes:
    apiKeyAuth:
      type: apiKey
      in: header
      name: x-api-key
      description: API key for authentication. Generate from your WaLead dashboard.

````