# Updates a webhook endpoint

<a id="flute-v2-patch-webhooks-endpoints-endpointId"></a>
<span class="api-endpoint">PATCH {{<a href="#urlbases">baseURL</a>}}/v2/webhooks/endpoints/{{endpointId}}</span>
This endpoint updates a webhook endpoint.
<span class="api-seealso">See Also:</span><br>
To list all available  webhooks, see `GET /v2/webhooks/endpoints`.<br>
To retrieve a specified webhook, see `GET /v2/webhooks/endpoints/{{endpointId}}`.<br>
To delete a webhook, see <a href="#flute-v2-api-keys-{{clientId}}">`DELETE /v2/webhooks/endpoints/{{endpointId}}`</a>.
<span style="font-size:8pt;">
[ <a href="#patch_v2_webhooks_endpoints_endpointId_request_body">Query parameters</a> ]
[ <a href="#patch_v2_webhooks_endpoints_endpointId_response_body">Response fields</a> ]
</span>

Endpoint: PATCH /v2/webhooks/endpoints/{endpointId}
Version: V2 Beta
Security: Bearer

## Path parameters:

  - `endpointId` (string, required)
    <br>Specifies the webhook identifier to retrieve.

## Request fields (application/json):

  - `endpointName` (string)
    Specifies the display name for the webhook.

This is a free-formed name that is convenient to recognize.

Example: Peppared Street Cafe's Reconciliation
    Example: Peppared Street Cafe's Reconciliation

  - `endpointUrl` (string)
    Specifies the HTTPS callback URL that receives webhook events.

Example: https://example.com/webhooks/pepparedstreetcafe
    Example: https://example.com/webhooks/pepparedstreetcafe

  - `endpointStatus` (string)
    Specifies the webhook state.
Valid values are:
| Value | Description |
|  --- | --- |
| Active | The webhook endpoint is enabled and available for use. |
| Inactive | The webhook endpoint is disabled and not available for use.It still exists but will not send event notifications. It may be re-activated. In contrast, a deleted webhook has been removed entirely and cannot be re-activated. A new webhook must be created.Any delivery attempts still queued for an endpoint that becomes `Inactive` is force-terminated as `Failed` rather than retried again.Inactive endpoints can still be pinged manually. |

Example: Active
    Enum: "Active", "Inactive"

  - `eventTypes` (string)
    Identifies events that are subscribed to.
Valid values are:
| Wire value | Meaning | Group |
|  --- | --- | --- |
| api_key.created | An API key was created | API Keys (affiliate only) |
| api_key.deleted | An API key was revoked or deleted | API Keys (affiliate only) |
| invoice.created | A new invoice was created | Invoices |
| invoice.paid | An invoice was marked as paid | Invoices |
| merchant.created | A new merchant account was created | Merchants (affiliate only) |
| payment_session.completed | A payment session reached a terminal state (completed, failed, or cancelled) | Payment Sessions |
| payment_session.created | A payment session was created | Payment Sessions |
| quick_payment.created | A quick payment link was created | Quick Payments |
| quick_payment.paid | A quick payment link was paid | Quick Payments |
| settlement.batch.completed | A batch settlement was processed and settled | Settlement |
| subscription.created | A new subscription was created | Subscriptions |
| subscription.delinquent | A subscription entered a delinquent state after repeated payment failures | Subscriptions |
| subscription.paid | A subscription payment was successfully collected | Subscriptions |
| subscription.payment_failed | A subscription payment attempt failed | Subscriptions |
| terminal.added | A new terminal was registered to the account | Terminals |
| terminal.deactivated | A terminal was deactivated on the account | Terminals |
| terminal.out_of_paper | A terminal paper roll is empty | Terminals |
| transaction.ach.cancelled | An ACH transaction was cancelled before processing | ACH Transactions |
| transaction.ach.charged_back | An ACH transaction was returned or charged back | ACH Transactions |
| transaction.ach.cleared | An ACH transaction successfully cleared | ACH Transactions |
| transaction.ach.failed | An ACH transaction failed due to a processing error | ACH Transactions |
| transaction.ach.held | An ACH transaction was placed on hold for review | ACH Transactions |
| transaction.ach.in_progress | An ACH transaction was submitted to the network | ACH Transactions |
| transaction.ach.refunded | An ACH transaction was refunded to the originator | ACH Transactions |
| transaction.ach.scheduled | An ACH transaction was created and scheduled | ACH Transactions |
| transaction.card.authorized | A card payment authorization was approved | Card Transactions |
| transaction.card.captured | An authorized card payment was captured | Card Transactions |
| transaction.card.declined | A card payment was declined by the issuer | Card Transactions |
| transaction.card.failed | A card payment failed due to a processing error | Card Transactions |
| transaction.card.refunded | A card payment was refunded to the cardholder | Card Transactions |
| transaction.card.voided | A card authorization was voided before capture | Card Transactions |

Examples:
null
[ "transaction.card.captured" ]
[ "transaction.card.captured", "transaction.card.authorized" ]
    Enum: "api_key.created", "api_key.deleted", "invoice.created", "invoice.paid", "merchant.created", "payment_session.completed", "payment_session.created", "quick_payment.created", "quick_payment.paid", "settlement.batch.completed", "subscription.created", "subscription.delinquent", "subscription.paid", "subscription.payment_failed", "terminal.added", "terminal.deactivated", "terminal.out_of_paper", "transaction.ach.cancelled", "transaction.ach.charged_back", "transaction.ach.cleared", "transaction.ach.failed", "transaction.ach.held", "transaction.ach.in_progress", "transaction.ach.refunded", "transaction.ach.scheduled", "transaction.card.authorized", "transaction.card.captured", "transaction.card.declined", "transaction.card.failed", "transaction.card.refunded", "transaction.card.voided"

## Response 200 fields (application/json):

  - `endpointId` (string)
    Indicates the webhook endpoint identifier.

Example: 9ab3d9e0-1f2a-4b3c-4d5e-6f7a8b9c0d36
    Example: 9ab3d9e0-1f2a-4b3c-4d5e-6f7a8b9c0d36

  - `endpointName` (string)
    Indicates the display name for the webhook.

This is a free-formed name that is convenient to recognize.

Example: Peppared Street Cafe's Reconciliation
    Example: Peppared Street Cafe's Reconciliation

  - `endpointUrl` (string)
    Indicates the HTTPS callback URL that receives webhook events.
Examples: https://example.com/webhooks/pepparedstreetcafe
    Example: https://example.com/webhooks/pepparedstreetcafe

  - `endpointStatus` (string)
    Indicates the endpoint status.
Valid values are:
| Value | Description |
|  --- | --- |
| Active | The webhook endpoint is enabled and available for use. |
| Inactive | The webhook endpoint is disabled and not available for use.It still exists but will not send event notifications. It may be re-activated. In contrast, a deleted webhook has been removed entirely and cannot be re-activated. A new webhook must be created. |

Example: Active
    Enum: "Active", "Inactive"

  - `eventTypes` (string)
    Identifies events that are subscribed to.
Valid values are:
| Wire value | Meaning | Group |
|  --- | --- | --- |
| api_key.created | An API key was created | API Keys (affiliate only) |
| api_key.deleted | An API key was revoked or deleted | API Keys (affiliate only) |
| invoice.created | A new invoice was created | Invoices |
| invoice.paid | An invoice was marked as paid | Invoices |
| merchant.created | A new merchant account was created | Merchants (affiliate only) |
| payment_session.completed | A payment session reached a terminal state (completed, failed, or cancelled) | Payment Sessions |
| payment_session.created | A payment session was created | Payment Sessions |
| quick_payment.created | A quick payment link was created | Quick Payments |
| quick_payment.paid | A quick payment link was paid | Quick Payments |
| settlement.batch.completed | A batch settlement was processed and settled | Settlement |
| subscription.created | A new subscription was created | Subscriptions |
| subscription.delinquent | A subscription entered a delinquent state after repeated payment failures | Subscriptions |
| subscription.paid | A subscription payment was successfully collected | Subscriptions |
| subscription.payment_failed | A subscription payment attempt failed | Subscriptions |
| terminal.added | A new terminal was registered to the account | Terminals |
| terminal.deactivated | A terminal was deactivated on the account | Terminals |
| terminal.out_of_paper | A terminal paper roll is empty | Terminals |
| transaction.ach.cancelled | An ACH transaction was cancelled before processing | ACH Transactions |
| transaction.ach.charged_back | An ACH transaction was returned or charged back | ACH Transactions |
| transaction.ach.cleared | An ACH transaction successfully cleared | ACH Transactions |
| transaction.ach.failed | An ACH transaction failed due to a processing error | ACH Transactions |
| transaction.ach.held | An ACH transaction was placed on hold for review | ACH Transactions |
| transaction.ach.in_progress | An ACH transaction was submitted to the network | ACH Transactions |
| transaction.ach.refunded | An ACH transaction was refunded to the originator | ACH Transactions |
| transaction.ach.scheduled | An ACH transaction was created and scheduled | ACH Transactions |
| transaction.card.authorized | A card payment authorization was approved | Card Transactions |
| transaction.card.captured | An authorized card payment was captured | Card Transactions |
| transaction.card.declined | A card payment was declined by the issuer | Card Transactions |
| transaction.card.failed | A card payment failed due to a processing error | Card Transactions |
| transaction.card.refunded | A card payment was refunded to the cardholder | Card Transactions |
| transaction.card.voided | A card authorization was voided before capture | Card Transactions |

Examples:
null
[ "transaction.card.captured" ]
[ "transaction.card.captured", "transaction.card.authorized" ]
    Enum: "api_key.created", "api_key.deleted", "invoice.created", "invoice.paid", "merchant.created", "payment_session.completed", "payment_session.created", "quick_payment.created", "quick_payment.paid", "settlement.batch.completed", "subscription.created", "subscription.delinquent", "subscription.paid", "subscription.payment_failed", "terminal.added", "terminal.deactivated", "terminal.out_of_paper", "transaction.ach.cancelled", "transaction.ach.charged_back", "transaction.ach.cleared", "transaction.ach.failed", "transaction.ach.held", "transaction.ach.in_progress", "transaction.ach.refunded", "transaction.ach.scheduled", "transaction.card.authorized", "transaction.card.captured", "transaction.card.declined", "transaction.card.failed", "transaction.card.refunded", "transaction.card.voided"

  - `createdOn` (string)
    Indicates the date-time (in an ISO 8601 UTC date-time format) the webhook was created on.

Example: 2026-05-05T14:30:36.759Z
    Example: 2026-05-05T14:30:36.759Z

  - `modifiedOn` (string)
    Indicates the date-time (in an ISO 8601 UTC date-time format) the webhook was last modified.

Example: 2026-07-10T03:22:47.918Z
    Example: 2026-07-10T03:22:47.918Z

## Response 400 fields (application/json):

  - `details` (string)
    Indicates details about the error.

Example: Validation failed: -- Email: 'Email' is not a valid email address. Severity: Error
    Example: Validation failed: -- Email: 'Email' is not a valid email address. Severity: Error

  - `statusCode` (integer)
    Specifies the HTTP response status code.
This is the HTTP status code returned by the attempted delivery.
The following is a list of HTTP response status codes that include but are not limited to:
| HTTP Status | Meaning |
|  --- | --- |
| 200 | Delivery succeeded |
| 400 | Bad request |
| 401 | Unauthorized |
| 404 | Endpoint not found |
| 429 | Rate limited |

Example: 401
    Example: 401

  - `source` (string)
    Indicates the source of the error.
Example: <Service>
    Example: <Service>

  - `exceptionType` (string)
    Indicates the error's exception type.

Example: FluentValidation.ValidationException
    Example: FluentValidation.ValidationException

  - `correlationId` (string)
    Indicates the correlation identifier.

Example: aa6cfcd0-0295-4a4c-b074-8c901f114fef
    Example: aa6cfcd0-0295-4a4c-b074-8c901f114fef

  - `entityId` (string)
    Indicates the entity identifier.
Example:
null

  - `errorCode` (string)
    Indicates the error code.
Example:
null

  - `title` (string)

  - `cause` (string)

  - `resolution` (string)

  - `documentationUrl` (string)
    https://developer.flute.com/

## Response 404 fields (application/json):

  - `details` (string)
    Indicates details about the error.

Example: Validation failed: -- Email: 'Email' is not a valid email address. Severity: Error
    Example: Validation failed: -- Email: 'Email' is not a valid email address. Severity: Error

  - `statusCode` (integer)
    Specifies the HTTP response status code.
This is the HTTP status code returned by the attempted delivery.
The following is a list of HTTP response status codes that include but are not limited to:
| HTTP Status | Meaning |
|  --- | --- |
| 200 | Delivery succeeded |
| 400 | Bad request |
| 401 | Unauthorized |
| 404 | Endpoint not found |
| 429 | Rate limited |

Example: 401
    Example: 401

  - `source` (string)
    Indicates the source of the error.
Example: <Service>
    Example: <Service>

  - `exceptionType` (string)
    Indicates the error's exception type.

Example: FluentValidation.ValidationException
    Example: FluentValidation.ValidationException

  - `correlationId` (string)
    Indicates the correlation identifier.

Example: aa6cfcd0-0295-4a4c-b074-8c901f114fef
    Example: aa6cfcd0-0295-4a4c-b074-8c901f114fef

  - `entityId` (string)
    Indicates the entity identifier.
Example:
null

  - `errorCode` (string)
    Indicates the error code.
Example:
null

  - `title` (string)

  - `cause` (string)

  - `resolution` (string)

  - `documentationUrl` (string)
    https://developer.flute.com/

## Response 500 fields (application/json):

  - `details` (string)
    Indicates details about the error.

Example: Validation failed: -- Email: 'Email' is not a valid email address. Severity: Error
    Example: Validation failed: -- Email: 'Email' is not a valid email address. Severity: Error

  - `statusCode` (integer)
    Specifies the HTTP response status code.
This is the HTTP status code returned by the attempted delivery.
The following is a list of HTTP response status codes that include but are not limited to:
| HTTP Status | Meaning |
|  --- | --- |
| 200 | Delivery succeeded |
| 400 | Bad request |
| 401 | Unauthorized |
| 404 | Endpoint not found |
| 429 | Rate limited |

Example: 401
    Example: 401

  - `source` (string)
    Indicates the source of the error.
Example: <Service>
    Example: <Service>

  - `exceptionType` (string)
    Indicates the error's exception type.

Example: FluentValidation.ValidationException
    Example: FluentValidation.ValidationException

  - `correlationId` (string)
    Indicates the correlation identifier.

Example: aa6cfcd0-0295-4a4c-b074-8c901f114fef
    Example: aa6cfcd0-0295-4a4c-b074-8c901f114fef

  - `entityId` (string)
    Indicates the entity identifier.
Example:
null

  - `errorCode` (string)
    Indicates the error code.
Example:
null

  - `title` (string)

  - `cause` (string)

  - `resolution` (string)

  - `documentationUrl` (string)
    https://developer.flute.com/

