# Updates a payment link

PATCH {{baseURL}}/v2/payment-links/{{paymentLinkId}}
This endpoint updates a payment link.
`paymentMethods` is replaced wholesale when present.
A type absent from the new array stops being accepted.
An entry without the `processorId` is pinned to the merchant's current default active processor of that type.
This endpoint returns the full updated payment link.
This endpoint requires a merchant API token.
A partner API token will result in a permissions error including possibly a 403 response.
See Also:
To list payment links, see GET /v2/payment-links.
To retrieve a payment link by identifier, see GET /v2/payment-links/{{paymentLinkId}}.
To delete a payment link, see DELETE /v2/payment-links/{{paymentLinkId}}.
To share a payment link, see POST /v2/payment-links/{{paymentLinkId}}/share.

Endpoint: PATCH /v2/payment-links/{paymentLinkId}
Version: V2 Beta
Security: Bearer

## Security:

  - `Bearer` (unknown)
    http bearer JWT

## Path parameters:

  - `paymentLinkId` (string, required)
    Specifies the payment link identifier.

Example: 6f2a8b3c-9d4e-4f1a-8b7c-3e5d6a9f0c1b

## Request body:

  - `application/json` (unknown)
    Specifies fields that should be changed, remain the same, or deleted.
This endpoint is a partial update.
* Send only the fields needed to be changed.
* An omitted field is left unchanged.
* A field marked as null clears a field.

Nested structures are also affected.

## Request fields (application/json):

  - `paymentMethods` (object)
    Identifies the payment methods a payment link accepts.
It is keyed by method so each one carries only the configuration that applies to it.

At least one payment method must be enabled, card or ACH.
Both may be specified.

  - `paymentMethods.card` (object)
    Identifies the card configuration on a payable resource.

  - `paymentMethods.card.enabled` (boolean)
    Identifies card payments are accepted.
Naming the payment method without a body offers it with no further configuration.
At least one payment method must be enabled, card or ACH.
Both may be specified.
If `true`, card payment is enabled.
If `false`, card payment is not enabled.
Example: true
    Example: true

  - `paymentMethods.card.processorId` (string)
    Identifies the processor that charges this resource's card payments.
This must be an active card processor of the merchant.
Omit this value to pin the merchant's current default active card processor.
A response carries the pinned processor, or `null` for a resource created before pinning was introduced.
Example: d529945e-8d10-4cb4-9dc3-718e57f3f14e
    Example: d529945e-8d10-4cb4-9dc3-718e57f3f14e

  - `paymentMethods.ach` (object)
    Identifies the ACH configuration on a payable resource.

This is typed separately from the card configuration so that ACH-only settings are enforced by the contract rather than by validation.

  - `paymentMethods.ach.enabled` (boolean)
    Identifies ACH (automated clearing house) payments are accepted.
Naming the payment method without a body offers it with no further configuration.
At least one payment method must be enabled, card or ACH.
Both may be specified.
If `true`, ACH payment is enabled.
If `false`, ACH payment is not enabled.
Example: true
    Example: true

  - `paymentMethods.ach.processorId` (string)
    Identifies the processor that charges this resource's ACH payments.
This must be an active ACH processor of the merchant.
Omit this value to pin the merchant's current default active ACH processor.
A response carries the pinned processor, or `null` for a resource created before pinning was introduced.
Example: d529945e-8d10-4cb4-9dc3-718e57f3f14e
    Example: d529945e-8d10-4cb4-9dc3-718e57f3f14e

  - `paymentMethods.ach.achAllowFasterProcessing` (boolean)
    Identifies ACH (automated clearing house) payments made through this resource use same-day processing.
If `true`, a submitted ACH payment is processed the same day.
If `false`, a submitted ACH payment uses standard processing timing.
Example: false
    Example: false

  - `taxMode` (string)
    Specifies how `taxRate` and `taxAmount` is applied to `amount`.
| Name | Description |
|  --- | --- |
| Exclusive | Adds the tax on top of `amount`. The payer is charged `amount` plus the tax. |
| Inclusive | Treats `amount` as already including the tax. No extra amount is added. |

A `taxMode` value must be used with exactly one of `taxRate` or `taxAmount`, or none of the three.
When all three are omitted, the payment session has no tax configured.
Example: Exclusive
    Enum: "Exclusive", "Inclusive"

  - `taxRate` (number)
    Specifies the tax rate percentage to apply to the base amount.
Valid values range from 0 to 100, with up to three decimal places.
A `taxMode` value must be used with exactly one of `taxRate` or `taxAmount`, or none of the three.
When all three are omitted, the payment session has no tax configured.
Example: 8.25 (for 8.25%)
    Example: 8.25

  - `taxAmount` (number)
    Specifies a fixed tax amount (in USD) to apply to the base amount.
This value has up to two decimal places and cannot be negative.
This value requires a fixed `baseAmount`.
A `taxMode` value must be used with exactly one of `taxRate` or `taxAmount`, or none of the three.
When all three are omitted, the payment session has no tax configured.
A response carries this value only when the tax was configured as an amount.
Otherwise, it is `null`.
Examples:
3.75 (for $3.75)
null
    Example: 3.75

  - `baseAmount` (number)
    Specifies the payment amount (in USD).
This value must be greater than zero when provided.
An explicit `null` clears the amount to a flexible amount, where the customer enters the amount at checkout.
Example: 25 (for $25)
    Example: 25

  - `currencyCode` (string)
    Specifies the transaction's currency code (in uppercase ISO 4217 currency code).

This value cannot be cleared, and the currency is frozen once the link has received payments.

Example: USD
    Enum: "USD"

  - `linkType` (string)
    Identifies the payment link type.
Valid values are:
| Type | Description |
|  --- | --- |
| MultiUse | The link can be shared with, and paid by, more than one customer. |
| SingleUse | The link is intended for a single customer and a single payment. |

Example: SingleUse
    Enum: "MultiUse", "SingleUse"

  - `paymentLinkStatus` (string)
    Indicates the status of the payment link.
Valid values are:
| Status | Description |
|  --- | --- |
| Active | The link is open and can accept a payment. |
| Completed | A SingleUse link that has received its one payment. |
| Expired | The link's `expiresOn` date has passed. |
| Inactive | The link was deactivated and cannot accept a payment. |

Example: Active
    Enum: "Active", "Completed", "Expired", "Inactive"

  - `customerId` (string)
    Specifies the customer the link is issued for.
An explicit `null` detaches the customer.
The link's `mode` stays as it is.
On a link created without a `mode`, attaching or detaching the customer also turns the save offer on or off.
On a `MultiUse` link, its payments, and any payment method a payer saves there, are recorded under this customer.
For additional security, a payment page with `MultiUse` links and a `customerId` never shows the customer's details or saved methods.

  - `metadata` (object)
    Specifies key-value pairs to merge into the payment link's metadata.
A key with a value is added or replaced.
A key set to `null` is removed.
A key left out is kept.
An explicit `null` removes every key.
The merged pairs must stay within the limits of the create request.
Only payment sessions the link opens afterwards carry the change.
Example: {"orderId": "9922", "Guest notes": null}
    Example: {"orderId":"9922","Guest notes":null}

  - `referenceId` (string)
    Specifies a reference identifier provided by the merchant.
An explicit `null` clears this value.
Example: ORDER-1042
    Example: ORDER-1042

  - `name` (string)
    Specifies the merchant-facing label for the payment link.

This value cannot be cleared.

Example: Spring campaign
    Example: Spring campaign

  - `description` (string)
    Specifies merchant-internal notes for the payment link.
An explicit `null` clears this value.

  - `expiresOn` (string)
    Specifies the UTC expiration date-time (in an ISO 8601 UTC date-time format).
This value must be a future date.
An explicit `null` means the link never expires.

## Response 200:

  - `200` (unknown)
    OK

## Response 200 fields (application/json):

  - `paymentLinkId` (string)
    Indicates the payment link identifier.

Example: 6f2a8b3c-9d4e-4f1a-8b7c-3e5d6a9f0c1b
    Example: 6f2a8b3c-9d4e-4f1a-8b7c-3e5d6a9f0c1b

  - `linkType` (string)
    Identifies the payment link type.
Valid values are:
| Type | Description |
|  --- | --- |
| MultiUse | The link can be shared with, and paid by, more than one customer. |
| SingleUse | The link is intended for a single customer and a single payment. |

Example: SingleUse
    Enum: "MultiUse", "SingleUse"

  - `mode` (string)
    Indicates whether payers are offered to save their payment method.
Valid values are:
| Name | Description |
|  --- | --- |
| Payment | Takes a one-off payment. |
| PaymentAndSave | Takes the payment and also offers the payer to save their payment method.When the link has no customer, a customer is created for a payer who saves. A `customerId` alone does not turn saving on. |

This value is `null` when no mode is recorded for the link.
This value cannot be changed through the API after the link is created.
A merchant who adds a customer to the link in the merchant portal turns saving on, and removing the customer there turns it off.
Example: Payment
    Enum: "Payment", "PaymentAndSave"

  - `metadata` (object)
    Indicates the key-value pairs attached to the payment link.
These pairs are copied into every payment session the link opens.
This value is `null` when the link has none.
Example: {"orderId": "9921"}
    Example: {"orderId":"9921","Guest notes":"Member of The World of Hyatt Credit Card."}

  - `paymentMethods` (object)
    Identifies the payment methods a payment link accepts.
It is keyed by method so each one carries only the configuration that applies to it.

At least one payment method must be enabled, card or ACH.
Both may be specified.

  - `paymentMethods.card` (object)
    Identifies the card configuration on a payable resource.

  - `paymentMethods.card.enabled` (boolean)
    Identifies card payments are accepted.
Naming the payment method without a body offers it with no further configuration.
At least one payment method must be enabled, card or ACH.
Both may be specified.
If `true`, card payment is enabled.
If `false`, card payment is not enabled.
Example: true
    Example: true

  - `paymentMethods.card.processorId` (string)
    Identifies the processor that charges this resource's card payments.
This must be an active card processor of the merchant.
Omit this value to pin the merchant's current default active card processor.
A response carries the pinned processor, or `null` for a resource created before pinning was introduced.
Example: d529945e-8d10-4cb4-9dc3-718e57f3f14e
    Example: d529945e-8d10-4cb4-9dc3-718e57f3f14e

  - `paymentMethods.ach` (object)
    Identifies the ACH configuration on a payable resource.

This is typed separately from the card configuration so that ACH-only settings are enforced by the contract rather than by validation.

  - `paymentMethods.ach.enabled` (boolean)
    Identifies ACH (automated clearing house) payments are accepted.
Naming the payment method without a body offers it with no further configuration.
At least one payment method must be enabled, card or ACH.
Both may be specified.
If `true`, ACH payment is enabled.
If `false`, ACH payment is not enabled.
Example: true
    Example: true

  - `paymentMethods.ach.processorId` (string)
    Identifies the processor that charges this resource's ACH payments.
This must be an active ACH processor of the merchant.
Omit this value to pin the merchant's current default active ACH processor.
A response carries the pinned processor, or `null` for a resource created before pinning was introduced.
Example: d529945e-8d10-4cb4-9dc3-718e57f3f14e
    Example: d529945e-8d10-4cb4-9dc3-718e57f3f14e

  - `paymentMethods.ach.achAllowFasterProcessing` (boolean)
    Identifies ACH (automated clearing house) payments made through this resource use same-day processing.
If `true`, a submitted ACH payment is processed the same day.
If `false`, a submitted ACH payment uses standard processing timing.
Example: false
    Example: false

  - `taxMode` (string)
    Specifies how `taxRate` and `taxAmount` is applied to `amount`.
| Name | Description |
|  --- | --- |
| Exclusive | Adds the tax on top of `amount`. The payer is charged `amount` plus the tax. |
| Inclusive | Treats `amount` as already including the tax. No extra amount is added. |

A `taxMode` value must be used with exactly one of `taxRate` or `taxAmount`, or none of the three.
When all three are omitted, the payment session has no tax configured.
Example: Exclusive
    Enum: "Exclusive", "Inclusive"

  - `taxRate` (number)
    Indicates the tax rate percentage to apply to the base amount.
Example: 8.25 (for 8.25%)
    Example: 8.25

  - `taxAmount` (number)
    Indicates a fixed tax amount (in USD) to apply to the base amount.
A response carries this value only when the tax was configured as an amount.
Otherwise, it is `null`.
Examples:
3.75 (for $3.75)
null
    Example: 3.75

  - `baseAmount` (number)
    Indicates the payment amount.

If omitted or null, indicates the customer can enter the amount at checkout.

Example: 25
    Example: 25

  - `currencyCode` (string)
    Indicates the transaction's currency code (in uppercase ISO 4217 currency code).

Example: USD
    Example: USD

  - `paymentLinkStatus` (string)
    Indicates the status of the payment link.
Valid values are:
| Status | Description |
|  --- | --- |
| Active | The link is open and can accept a payment. |
| Completed | A SingleUse link that has received its one payment. |
| Expired | The link's `expiresOn` date has passed. |
| Inactive | The link was deactivated and cannot accept a payment. |

Example: Active
    Enum: "Active", "Completed", "Expired", "Inactive"

  - `name` (string)
    Indicates the merchant-facing label for the payment link.

Example: Spring campaign
    Example: Spring campaign

  - `description` (string)
    Indicates the merchant-internal notes for the payment link.

This value is never shown to customers.

Example: Shared with returning customers only
    Example: Shared with returning customers only

  - `shortUrl` (string)
    Indicates a shortened version of the URL to the invoice's public payment page.

These are generated by Flute and are the hosted page the customer opens to pay.
This is the compact form.
It is better suited for SMS messages, printed materials, anywhere character count or a tidy appearance matters.

Example: https://pay.example.com/l/abc123
    Example: https://pay.example.com/l/abc123

  - `customerId` (string)
    Indicates the customer the link is issued for.

If omitted or null, this value is for an anonymous link.

Example: a3b37f26-3b4c-4d5e-6f7a-8b9c0d1e2f58
    Example: a3b37f26-3b4c-4d5e-6f7a-8b9c0d1e2f58

  - `customerFirstName` (string)
    Indicates the first name of the attached customer, when any.

Example: Alexandro
    Example: Alexandro

  - `customerLastName` (string)
    Indicates the last name of the attached customer, when any.

Example: Peppared
    Example: Peppared

  - `referenceId` (string)
    Indicates the reference identifier provided by the merchant.

Example: ORDER-1042
    Example: ORDER-1042

  - `expiresOn` (string)
    Indicates the UTC expiration date-time (in an ISO 8601 UTC date-time format).
This value is `null` when the link never expires.
Example: 2029-09-15T00:00:00.000Z
    Example: 2029-09-15T00:00:00.000Z

  - `paymentCount` (integer)
    Indicates the number of successful payments received.

Example: 3
    Example: 3

  - `totalCollectedAmount` (number)
    Indicates the sum of all successful payment amounts (in USD).
Example: 75 (for $75)
    Example: 75

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

Example: 2026-01-15T10:30:56.264Z
    Example: 2026-01-15T10:30:56.264Z

  - `lastPaymentOn` (string)
    Indicates the date-time (in an ISO 8601 UTC date-time format) of the newest successful payment.
This value is `null` when no payments exist.
Example: 2026-03-10T18:42:11.264Z
    Example: 2026-03-10T18:42:11.264Z

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

Example: 2026-07-07T14:09:31.264Z
    Example: 2026-07-07T14:09:31.264Z

## Response 400:

  - `400` (unknown)
    Bad Request

## Response 400 fields (application/json):

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

Example: Unauthorized
    Example: Unauthorized

  - `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 Response | 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.

This is a unique identifier, a trace identifier, Flute attaches to a request/response pair so a single transaction can be traced end-to-end across systems and logs. 

Its intent is to support troubleshooting.
We recommend including this value when contacting support.

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

  - `entityId` (string)
    Indicates the entity identifier.
This is a field on Flute's standard error response object, alongside values such as `correlationId`, `errorCode`, or `statusCode`.
It's the identifier of the specific resource the failed request was about.
Error messages may specify "Entity with ID b31fbe9f-eebb-45ce-9cae-92265389f47f does not exist or has been deleted."
When a 404 (or similar entity-specific error, like a conflict) comes back,
check `entityId` to get the exact identifier of the record that couldn't be found or matched.
This is useful for confirming which resource reference was wrong, especially if the request touched multiple identifiers at once.
Example: null

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

  - `title` (string)
    Indicates a short, human-readable summary of the error category.

Example: Resource not found
    Example: Resource not found

  - `cause` (string)
    Indicates the reason the error occurred.

Example: The requested resource does not exist or has been deleted.
    Example: The requested resource does not exist or has been deleted.

  - `resolution` (string)
    Indicates the recommended action for resolving the error.

Example: Verify the resource ID is correct or retrieve a list of available resources.
    Example: Verify the resource ID is correct or retrieve a list of available resources.

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

## Response 401:

  - `401` (unknown)
    Unauthorized

## Response 401 fields (application/json):

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

Example: Unauthorized
    Example: Unauthorized

  - `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 Response | 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.

This is a unique identifier, a trace identifier, Flute attaches to a request/response pair so a single transaction can be traced end-to-end across systems and logs. 

Its intent is to support troubleshooting.
We recommend including this value when contacting support.

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

  - `entityId` (string)
    Indicates the entity identifier.
This is a field on Flute's standard error response object, alongside values such as `correlationId`, `errorCode`, or `statusCode`.
It's the identifier of the specific resource the failed request was about.
Error messages may specify "Entity with ID b31fbe9f-eebb-45ce-9cae-92265389f47f does not exist or has been deleted."
When a 404 (or similar entity-specific error, like a conflict) comes back,
check `entityId` to get the exact identifier of the record that couldn't be found or matched.
This is useful for confirming which resource reference was wrong, especially if the request touched multiple identifiers at once.
Example: null

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

  - `title` (string)
    Indicates a short, human-readable summary of the error category.

Example: Resource not found
    Example: Resource not found

  - `cause` (string)
    Indicates the reason the error occurred.

Example: The requested resource does not exist or has been deleted.
    Example: The requested resource does not exist or has been deleted.

  - `resolution` (string)
    Indicates the recommended action for resolving the error.

Example: Verify the resource ID is correct or retrieve a list of available resources.
    Example: Verify the resource ID is correct or retrieve a list of available resources.

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

## Response 403:

  - `403` (unknown)
    Forbidden

## Response 403 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/

  - `errors` (object)

## Response 404:

  - `404` (unknown)
    Not Found

## Response 404 fields (application/json):

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

Example: Unauthorized
    Example: Unauthorized

  - `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 Response | 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.

This is a unique identifier, a trace identifier, Flute attaches to a request/response pair so a single transaction can be traced end-to-end across systems and logs. 

Its intent is to support troubleshooting.
We recommend including this value when contacting support.

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

  - `entityId` (string)
    Indicates the entity identifier.
This is a field on Flute's standard error response object, alongside values such as `correlationId`, `errorCode`, or `statusCode`.
It's the identifier of the specific resource the failed request was about.
Error messages may specify "Entity with ID b31fbe9f-eebb-45ce-9cae-92265389f47f does not exist or has been deleted."
When a 404 (or similar entity-specific error, like a conflict) comes back,
check `entityId` to get the exact identifier of the record that couldn't be found or matched.
This is useful for confirming which resource reference was wrong, especially if the request touched multiple identifiers at once.
Example: null

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

  - `title` (string)
    Indicates a short, human-readable summary of the error category.

Example: Resource not found
    Example: Resource not found

  - `cause` (string)
    Indicates the reason the error occurred.

Example: The requested resource does not exist or has been deleted.
    Example: The requested resource does not exist or has been deleted.

  - `resolution` (string)
    Indicates the recommended action for resolving the error.

Example: Verify the resource ID is correct or retrieve a list of available resources.
    Example: Verify the resource ID is correct or retrieve a list of available resources.

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

## Response 409:

  - `409` (unknown)
    Conflict

## Response 409 fields (application/json):

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

Example: Unauthorized
    Example: Unauthorized

  - `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 Response | 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.

This is a unique identifier, a trace identifier, Flute attaches to a request/response pair so a single transaction can be traced end-to-end across systems and logs. 

Its intent is to support troubleshooting.
We recommend including this value when contacting support.

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

  - `entityId` (string)
    Indicates the entity identifier.
This is a field on Flute's standard error response object, alongside values such as `correlationId`, `errorCode`, or `statusCode`.
It's the identifier of the specific resource the failed request was about.
Error messages may specify "Entity with ID b31fbe9f-eebb-45ce-9cae-92265389f47f does not exist or has been deleted."
When a 404 (or similar entity-specific error, like a conflict) comes back,
check `entityId` to get the exact identifier of the record that couldn't be found or matched.
This is useful for confirming which resource reference was wrong, especially if the request touched multiple identifiers at once.
Example: null

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

  - `title` (string)
    Indicates a short, human-readable summary of the error category.

Example: Resource not found
    Example: Resource not found

  - `cause` (string)
    Indicates the reason the error occurred.

Example: The requested resource does not exist or has been deleted.
    Example: The requested resource does not exist or has been deleted.

  - `resolution` (string)
    Indicates the recommended action for resolving the error.

Example: Verify the resource ID is correct or retrieve a list of available resources.
    Example: Verify the resource ID is correct or retrieve a list of available resources.

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

## Response 429:

  - `429` (unknown)
    Too Many Requests

## Response 429 fields (application/json):

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

Example: Unauthorized
    Example: Unauthorized

  - `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 Response | 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.

This is a unique identifier, a trace identifier, Flute attaches to a request/response pair so a single transaction can be traced end-to-end across systems and logs. 

Its intent is to support troubleshooting.
We recommend including this value when contacting support.

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

  - `entityId` (string)
    Indicates the entity identifier.
This is a field on Flute's standard error response object, alongside values such as `correlationId`, `errorCode`, or `statusCode`.
It's the identifier of the specific resource the failed request was about.
Error messages may specify "Entity with ID b31fbe9f-eebb-45ce-9cae-92265389f47f does not exist or has been deleted."
When a 404 (or similar entity-specific error, like a conflict) comes back,
check `entityId` to get the exact identifier of the record that couldn't be found or matched.
This is useful for confirming which resource reference was wrong, especially if the request touched multiple identifiers at once.
Example: null

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

  - `title` (string)
    Indicates a short, human-readable summary of the error category.

Example: Resource not found
    Example: Resource not found

  - `cause` (string)
    Indicates the reason the error occurred.

Example: The requested resource does not exist or has been deleted.
    Example: The requested resource does not exist or has been deleted.

  - `resolution` (string)
    Indicates the recommended action for resolving the error.

Example: Verify the resource ID is correct or retrieve a list of available resources.
    Example: Verify the resource ID is correct or retrieve a list of available resources.

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

## Response 500:

  - `500` (unknown)
    Internal Server Error

## Response 500 fields (application/json):

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

Example: Unauthorized
    Example: Unauthorized

  - `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 Response | 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.

This is a unique identifier, a trace identifier, Flute attaches to a request/response pair so a single transaction can be traced end-to-end across systems and logs. 

Its intent is to support troubleshooting.
We recommend including this value when contacting support.

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

  - `entityId` (string)
    Indicates the entity identifier.
This is a field on Flute's standard error response object, alongside values such as `correlationId`, `errorCode`, or `statusCode`.
It's the identifier of the specific resource the failed request was about.
Error messages may specify "Entity with ID b31fbe9f-eebb-45ce-9cae-92265389f47f does not exist or has been deleted."
When a 404 (or similar entity-specific error, like a conflict) comes back,
check `entityId` to get the exact identifier of the record that couldn't be found or matched.
This is useful for confirming which resource reference was wrong, especially if the request touched multiple identifiers at once.
Example: null

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

  - `title` (string)
    Indicates a short, human-readable summary of the error category.

Example: Resource not found
    Example: Resource not found

  - `cause` (string)
    Indicates the reason the error occurred.

Example: The requested resource does not exist or has been deleted.
    Example: The requested resource does not exist or has been deleted.

  - `resolution` (string)
    Indicates the recommended action for resolving the error.

Example: Verify the resource ID is correct or retrieve a list of available resources.
    Example: Verify the resource ID is correct or retrieve a list of available resources.

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

