---
title: "Update a Sequence"
method: PUT
path: "/sequences/{id}"
tags: ["Sequences"]
---

# Update a Sequence

`PUT /sequences/{id}`

This endpoint doesn't consume Apollo credits. Learn more about [API pricing and credits](https://docs.apollo.io/docs/api-pricing).

<a href="https://knowledge.apollo.io/hc/en-us/articles/4409237165837-Sequences-Overview" target="_blank">Sequences</a> are outreach campaigns that sales teams use to reach out to contacts over a planned period of time.<br><br>Use the Update a Sequence endpoint to update an existing sequence (emailer campaign) in your team's Apollo account.<br><br>You can update sequence-level settings, such as the name, active state, schedule, and sending limits, as well as the sequence's steps and the email touches within each step. <br><br>To turn a sequence on or off, set the `active` field. Passing `emailer_steps` will create, update, reorder, or remove steps and their touches based on the IDs you provide.<br><br>To create a new sequence instead, use the <a href="https://docs.apollo.io/reference/create-sequence">Create a Sequence endpoint</a>.<br><br>This endpoint requires a master API key. If you call the endpoint without a master key, you receive a `403` response. Check out <a href="https://docs.apollo.io/docs/create-api-key">Create an API Key</a> to learn how to create a master key.

## Path parameters

- `id` string, required

## Request body

- object
  - `name` string — Update the name of the sequence. Example: `New outbound sequence`
  - `active` boolean — Turn the sequence on (`true`) or off (`false`). When set to `true`, Apollo resumes scheduling for the sequence; when set to `false`, pending work is paused.
  - `creation_type` 'draft' | 'new' | 'ai_assistant' — The creation type for the sequence. A `draft` sequence is automatically promoted to `new` (or `ai_assistant`) when steps are added.
  - `permissions` string — Update who can access the sequence. Example: `team_can_use`
  - `emailer_schedule_id` string — Attach a sending schedule to the sequence. Must reference a non-empty schedule that belongs to your team. Example: `6095a710bd01d100a506d4af`
  - `label_names` string[] — Replace the labels (folders) this sequence belongs to. Passing new values will overwrite the existing labels.
  - `max_emails_per_day` integer — Maximum number of emails that can be sent per day for this sequence.
  - `same_account_reply_delay_days` integer — Number of days to wait before contacting another person at the same account.
  - `cc_emails` string — Comma-separated list of email addresses to CC on emails sent from this sequence.
  - `bcc_emails` string — Comma-separated list of email addresses to BCC on emails sent from this sequence.
  - `emailer_steps` object[] — The ordered list of steps in the sequence. Include an `id` to update an existing step; omit it to create a new step. Steps that exist on the sequence but are not present in this array are removed.
    - `id` string — The Apollo ID of an existing step to update. Omit to create a new step.
    - `position` integer — The 1-based position of the step within the sequence. Example: `1`
    - `type` string — The step type.
    - `wait_mode` string — The unit used for the wait before this step runs. Example: `day`
    - `wait_time` integer — How long to wait (in `wait_mode` units) before running this step. Example: `1`
    - `auto_skip_in_x_days` integer — Automatically skip this step if it has not run within the given number of days.
    - `emailer_touches` object[] — The email touches that belong to this step. Include an `id` to update an existing touch; omit it to create a new touch.
      - `id` string — The Apollo ID of an existing touch to update. Omit to create a new touch.
      - `status` 'to_be_reviewed' | 'approved' — The review status of the touch. Set to `approved` to enable the touch (the template must have a non-empty body).
      - `attachment_ids` string[] — IDs of attachments to include with this touch.
      - `emailer_template` object — The email template content for this touch.
        - `subject` string — The subject line of the email. Example: `Quick question, {{first_name}}`
        - `body_html` string — The HTML body of the email. Example: `<p>Hi {{first_name}}</p>`
      - `generation_options` object[] — AI generation options used to compose the touch content.
        - `type` string
        - `additional_prompt` string
        - `signals` string[]
        - `field_name` string
      - `generation_tone` object — The tone to apply when generating the touch content with AI.
        - `tone_type` string
        - `tone_sample` string

## Response `200`

200

- object
  - `id` string
  - `name` string
  - `active` boolean
  - `archived` boolean
  - `created_at` string
  - `updated_at` string
  - `num_steps` integer
  - `steps` object[]
    - `id` string
    - `position` integer
    - `step_type` string
    - `wait_time` integer
    - `wait_mode` string
    - `auto_skip_in_x_days` unknown
  - `emailer_campaign` object
    - `id` string
    - `name` string
    - `active` boolean
  - `emailer_steps` object[]
    - `id` string
    - `position` integer
  - `emailer_touches` object[]
    - `id` string
    - `status` string

## Other responses

- `401` — 401
- `404` — 404
- `422` — 422
- `429` — 429

---

[API](https://skmtc.dev/apollo/apis/apollo-rest-api.md) · [All operations](https://skmtc.dev/apollo/apis/apollo-rest-api/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/apollo/apollo-rest-api/revisions/c715a05fa6e2/schema)
