---
title: "Update a step variant for a sequence"
method: PATCH
path: "/v1/sequences/{sequenceId}/steps/{stepId}/variants/{variantId}"
tags: ["sequences"]
---

# Update a step variant for a sequence

`PATCH /v1/sequences/{sequenceId}/steps/{stepId}/variants/{variantId}`

Update the <code>payload</code>, <code>status</code>, <code>taskNote</code>, <code>priority</code>, <code>assigneeId</code>, or <code>attachmentIds</code> of an existing variant. The <code>payload</code> shape must match the step's channel (see OpenAPI.md).

## Path parameters

- `sequenceId` string, required
- `stepId` string, required
- `variantId` string, required

## Request body

- UpdateSequenceStepVariantDto
  - `status` 0 | 1 — Variant status: 0 = Inactive (paused), 1 = Active.
  - `taskNote` string — Task note for the variant. NOT allowed on Email variants (type=1) — edge rejects it because Email is automated, not task-based. Use for LinkedIn / Call / Task / WhatsApp channels.
  - `payload` object — Payload for the variant. Shape must match the step's channel — see OpenAPI.md (Email: `{subject, content, preheader?}`, LinkedInConnectionRequest: `{connectionNote}`, LinkedInMessage: `{message}`, LinkedInInMail: `{subject, message}`, ViewProfile/PostInteraction/Task/Call/Whatsapp: `{}`).
  - `absoluteDays` number — Override day number for this variant (1–999). Each day can hold at most one Email step.
  - `attachmentIds` string[] — Full replacement of the attachment list for this variant (Email variants only). Pass `[]` to remove all attachments. Upload attachments via POST /v1/attachments to obtain an ID.
  - `type` 'Email' | 'LinkedInConnectionRequest' | 'LinkedInMessage' | 'LinkedInInMail' | 'LinkedInViewProfile' | 'LinkedInPostInteration' | 'Custom' | 'CallIntroduction' | 'CallDemo' | 'CallFollowUp' | 'CallReminder' | 'CallOther' | 'WhatsappMessage' | 'WhatsappVoiceMessage' | 'WhatsappVoiceCall'
  - `assigneeId` string — Hashed user ID to assign generated tasks to (task-based channels). Defaults to the sequence owner.
  - `priority` 'Urgent' | 'High' | 'Normal' | 'Low' — Task priority (1=Urgent, 2=High, 3=Normal, 4=Low). Used when the channel generates a task.

## Response `200`

Sequence step variant updated successfully

- unknown

## Other responses

- `400` — 4000: Failed to update sequence step variant<br><br>
- `500` — 5001: Internal server error, please try again later<br><br>

---

[API](https://skmtc.dev/saleshandy/apis/develop-with-saleshandy.md) · [All operations](https://skmtc.dev/saleshandy/apis/develop-with-saleshandy/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/saleshandy/develop-with-saleshandy/revisions/fdaa0f2dcdfb/schema)
