---
title: "Changes to Update a subscription alert"
method: PUT
path: "/subscriptions/{external_id}/alerts/{code}"
---

# Changes to Update a subscription alert

`PUT /subscriptions/{external_id}/alerts/{code}`

> Every recorded change to this operation, newest first.

## Timeline

Changed in 2 of 3 revisions.

- **2026-11-05** `b216574b9612`: 6 info
- **2026-11-03** `5d26657495a3`: 10 breaking, 8 warning, 8 info

## Changes

- **2026-11-05** `b216574b9612`: 6 info
  - the response property `alert/billable_metric/oneOf[#/components/schemas/BillableMetricObject]/description` became required for the status `200`
  - the response property `alert/billable_metric/oneOf[#/components/schemas/BillableMetricObject]/expression` became required for the status `200`
  - the response property `alert/billable_metric/oneOf[#/components/schemas/BillableMetricObject]/field_name` became required for the status `200`
  - the response property `alert/billable_metric/oneOf[#/components/schemas/BillableMetricObject]/rounding_function` became required for the status `200`
  - the response property `alert/billable_metric/oneOf[#/components/schemas/BillableMetricObject]/rounding_precision` became required for the status `200`
  - the response property `alert/billable_metric/oneOf[#/components/schemas/BillableMetricObject]/weighted_interval` became required for the status `200`
- **2026-11-03** `5d26657495a3`: 10 breaking, 8 warning, 8 info
  - request property `alert/allOf[#/components/schemas/AlertBaseInput]/thresholds/items/allOf[subschema #2]/value` list-of-types was narrowed by removing types `integer` from media type `application/json`
  - added `#/components/schemas/BillableMetricObject, subschema #2` to the `alert/billable_metric` response property `oneOf` list for the response status `200`
  - the `alert/billable_metric` response's property type changed from `object` to no type for status `200`
  - the `alert/previous_value` response's property type changed from `number` to `string` for status `200`
  - removed the required property `alert/billable_metric/aggregation_type` from the response with the `200` status
  - removed the required property `alert/billable_metric/code` from the response with the `200` status
  - removed the required property `alert/billable_metric/created_at` from the response with the `200` status
  - removed the required property `alert/billable_metric/lago_id` from the response with the `200` status
  - removed the required property `alert/billable_metric/name` from the response with the `200` status
  - removed the required property `alert/billable_metric/recurring` from the response with the `200` status
  - removed the optional property `alert/billable_metric/description` from the response with the `200` status
  - removed the optional property `alert/billable_metric/expression` from the response with the `200` status
  - removed the optional property `alert/billable_metric/field_name` from the response with the `200` status
  - removed the optional property `alert/billable_metric/filters` from the response with the `200` status
  - removed the optional property `alert/billable_metric/rounding_function` from the response with the `200` status
  - removed the optional property `alert/billable_metric/rounding_precision` from the response with the `200` status
  - removed the optional property `alert/billable_metric/weighted_interval` from the response with the `200` status
  - added the new `billable_metric_lifetime_usage_units` enum value to the `alert/alert_type` response property for the response status `200`
  - added the new optional request property `alert/allOf[#/components/schemas/AlertBaseInput]/thresholds/items/allOf[#/components/schemas/AlertThresholdBaseObject]/notify_on`
  - added the new enum value `incomplete` to the `query` request parameter `subscription_status`
  - the `alert/allOf[#/components/schemas/AlertBaseInput]/thresholds/items/allOf[subschema #2]/value/oneOf[subschema #1]/` request property type was generalized from `integer` to `number`
  - added the optional property `alert/thresholds/items/allOf[#/components/schemas/AlertThresholdBaseObject]/notify_on` to the response with the `200` status
  - the response property `alert/direction` became required for the status `200`
  - the response property `alert/lago_wallet_id` became required for the status `200`
  - the response property `alert/wallet_code` became required for the status `200`
  - the `alert/thresholds/items/allOf[subschema #2]/value` response's property pattern was changed from `^[0-9]+.?[0-9]*$` to `^-?[0-9]+(\.[0-9]+)?$` for the status `200`

---

[Operation](https://skmtc.dev/getlago/apis/lago-api-documentation/docs/subscriptions/:external_id/alerts/:code/put.md) - [API](https://skmtc.dev/getlago/apis/lago-api-documentation.md) - [Page](https://skmtc.dev/getlago/apis/lago-api-documentation/changes/subscriptions/:external_id/alerts/:code/put)
