---
title: "Update Signer"
method: PATCH
path: "/workflows/{id}/sign-status/signers/{signerRoleName}"
tags: ["Workflows"]
---

# Update Signer

`PATCH /workflows/{id}/sign-status/signers/{signerRoleName}`

## Request

- Base URL: `https://ironcladapp.com/public/api/v1`
- URL: `https://ironcladapp.com/public/api/v1/workflows/{id}/sign-status/signers/{signerRoleName}`
- Auth: API key in header `Authorization` and OAuth 2
  - Authorization code: `https://ironcladapp.com/oauth/authorize`
  - Client credentials
  - Token URL: `https://ironcladapp.com/oauth/token` scopes: `public.workflows.updateSigners`

Reassign a signer or edit an external signer's name or email, as specified by the `signerRoleName` parameter. The original signer will receive an email that the packet has been reassigned if it was sent out for signature.

**OAuth Scope required:** `public.workflows.updateSigners`

**NOTE**: Editing a signer will not cancel a signature request unless your configured signature provider is Adobe Sign. Also, you cannot update a signer that has already signed via the API for any signature provider.

## Path parameters

- `id` string, required
- `signerRoleName` string, required

## Headers

- `x-as-user-email` string
- `x-as-user-id` string

## Request body

- union
  - InternalAssignment
    - `reason` string, required: The reason for updating the signer.
    - `assigned` object, required: Indicates the signer that you want to assign to the given role.
      - `type` 'internal', required: Indicates an internal Ironclad user within the company the workflow was launched from.
      - `userId` string, required: The user ID associated with the signer.
    - `signsOutsideIronclad` boolean: Indicates whether this signer signs outside of Ironclad. When true, the signer is excluded from the eSignature request and the workflow waits for their signature to be uploaded instead of auto-advancing.
    - `muteCancellationNotifications` boolean: Updating a signer on a packet that is out for signature cancels the in-flight request and issues a new one. When true, the eSignature provider does not email signers about that cancellation. Only supported for Ironclad Signature and Adobe Sign: DocuSign cannot suppress cancellation emails, and Dropbox Sign does not send one. Returns a 400 `INVALID_PARAM` error when set to true and the provider holding the in-flight request does not support it. Ignored when no request is out for signature.
  - ExternalAssignment
    - `reason` string, required: The reason for updating the signer.
    - `assigned` object, required: Indicates the signer that you want to assign to the given role.
      - `type` 'external', required: Indicates an external signer.
      - `email` string, required: The email associated with the signer you want to assign.
      - `name` string, required: The name associated with the signer you want to assign.
    - `signsOutsideIronclad` boolean: Indicates whether this signer signs outside of Ironclad. When true, the signer is excluded from the eSignature request and the workflow waits for their signature to be uploaded instead of auto-advancing.
    - `muteCancellationNotifications` boolean: Updating a signer on a packet that is out for signature cancels the in-flight request and issues a new one. When true, the eSignature provider does not email signers about that cancellation. Only supported for Ironclad Signature and Adobe Sign: DocuSign cannot suppress cancellation emails, and Dropbox Sign does not send one. Returns a 400 `INVALID_PARAM` error when set to true and the provider holding the in-flight request does not support it. Ignored when no request is out for signature.

## Response `200`

200

- union
  - SignStatusInternalSigner
    - `name` string, required: The signer's name.
    - `email` string, required: The signer's email.
    - `roleName` string, required: The role name associated with the signer.
    - `status` 'pending' | 'declined' | 'sent' | 'viewed' | 'signed', required: The status of the signer's action on the request.
    - `isWetSigned` boolean: Indicates if the document was physically signed by the signer and then uploaded.
    - `delegates` object[]
      - `name` string: The delegate's name.
      - `email` string: The delegate's email.
    - `routingOrder` integer: Indicates the order in which a signer signs when signing is sequential. NOTE: If a signer signs with wet signature, their routing order is denoted as -1.
    - `signsOutsideIronclad` boolean: Indicates whether this signer signs outside of Ironclad. When true, the signer is excluded from the eSignature request and the workflow waits for their signature to be uploaded.
    - `type` 'internal', required: Indicates an internal Ironclad user.
    - `userId` string: The user ID associated with the signer.
  - SignStatusExternalSigner
    - `name` string, required: The signer's name.
    - `email` string, required: The signer's email.
    - `roleName` string, required: The role name associated with the signer.
    - `status` 'pending' | 'declined' | 'sent' | 'viewed' | 'signed', required: The status of the signer's action on the request.
    - `isWetSigned` boolean: Indicates if the document was physically signed by the signer and then uploaded.
    - `delegates` object[]
      - `name` string: The delegate's name.
      - `email` string: The delegate's email.
    - `routingOrder` integer: Indicates the order in which a signer signs when signing is sequential. NOTE: If a signer signs with wet signature, their routing order is denoted as -1.
    - `signsOutsideIronclad` boolean: Indicates whether this signer signs outside of Ironclad. When true, the signer is excluded from the eSignature request and the workflow waits for their signature to be uploaded.
    - `type` 'external', required: Indicates an external signer.

## Other responses

- `400`: 400
- `401`: 401
- `404`: 404 not found

## Changes

- **2026-11-03** `435da5a4396e`: 6 info
  - added the new optional request property `oneOf[subschema #1: Internal Assignment]/muteCancellationNotifications`
  - added the new optional request property `oneOf[subschema #1: Internal Assignment]/signsOutsideIronclad`
  - added the new optional request property `oneOf[subschema #2: External Assignment]/muteCancellationNotifications`
  - added the new optional request property `oneOf[subschema #2: External Assignment]/signsOutsideIronclad`
  - …2 more

[Operation history](https://skmtc.dev/ironcladapp/apis/ironclad-public-api/changes/workflows/:id/sign-status/signers/:signerRoleName/patch.md)

---

[API](https://skmtc.dev/ironcladapp/apis/ironclad-public-api.md) - [All operations](https://skmtc.dev/ironcladapp/apis/ironclad-public-api/llms.txt) - [OpenAPI document](https://skmtc.dev/ironcladapp/apis/ironclad-public-api/revisions/435da5a4396e?raw)
