---
title: "Update a workflow"
method: PUT
path: "/v3/workflows/{workflow_id}"
tags: ["Application-level workflows"]
---

# Update a workflow

`PUT /v3/workflows/{workflow_id}`

Updates the specified application-level workflow.

## Request body

- object
  - `delay` integer — The number of minutes between a `trigger_event` being met and the workflow sending a message.
  - `is_enabled` boolean — When `true`, indicates that the workflow is enabled.
  - `name` string — The name of the workflow.
  - `template_id` string — The ID of the email template the workflow uses.
  - `trigger_event` 'booking.cancelled' | 'booking.created' | 'booking.pending' | 'booking.reminder' | 'booking.rescheduled' — The event which triggers the workflow.
  - `from` object, nullable — Details of the sender if the workflow should use [transactional send](/docs/reference/api/transactional-send/). If not provided, the sender will be the grant associated with the trigger event.
    - `email` string — The email address of the sender.
    - `name` string — The name of the sender.

## Response `200`

Success. Returns workflow.

- object
  - `request_id` string, required — The ID of the request.
  - `data` Workflow, required — A custom workflow that sends messages from a template when certain events are triggered.
    - `app_id` string, nullable — The ID of the Nylas application associated with the workflow. Returned only if the workflow is configured at the application level.
    - `date_created` integer, required — When the workflow was created, in seconds using the Unix timestamp format.
    - `delay` integer, required — The number of minutes between a `trigger_event` being met and the workflow sending a message.
    - `grant_id` string, nullable — The ID of the grant associated with the workflow. Returned only if the workflow is configured at the grant level.
    - `id` string, required — The ID of the workflow.
    - `is_enabled` boolean, required — When `true`, indicates that the workflow is enabled.
    - `name` string, required — The name of the workflow.
    - `template_id` string, required — The ID of the email template the workflow uses.
    - `trigger_event` 'booking.cancelled' | 'booking.created' | 'booking.pending' | 'booking.reminder' | 'booking.rescheduled', required — The event which triggers the workflow.
    - `from` object, nullable — Details of the sender if the workflow uses transactional send.
      - `email` string — The email address of the sender.
      - `name` string — The name of the sender.

## Other responses

- `400` — Error: Bad request
- `404` — Error: Not found

---

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