Update a subscription alert
Changed onThis endpoint allows you to update an existing alert for a subscription. A non-empty thresholds array replaces the whole set of thresholds on the alert. When thresholds is left out, or sent as an empty array, the thresholds already on the alert are kept. A threshold sent with a code it already had, and without notify_on, keeps the notify_on it had.
Request
- Base URLhttps://api.getlago.com/api/v1
- AuthHTTP bearer
- TypeScriptA function with typed inputs. Its response is checked against the schema.
Query parameters
Filter by subscription status. When provided, the subscription is looked up with this status instead of the default active status. Possible values are pending, active, terminated, canceled, or incomplete.
Request body
Example request
{
"alert": {
"code": "storage_threshold_alert",
"name": "Storage Usage Alert",
"thresholds": [
{
"code": "warn",
"notify_on": [
"triggered",
"resolved"
]
}
],
"billable_metric_code": "storage_usage"
}
}Response
Subscription alert updated
Example response
{
"alert": {
"lago_id": "1a901a90-1a90-1a90-1a90-1a901a901a90",
"lago_organization_id": "1a901a90-1a90-1a90-1a90-1a901a901a90",
"external_subscription_id": "sub_1234567890",
"billable_metric": {
"lago_id": "1a901a90-1a90-1a90-1a90-1a901a901a90",
"name": "Storage",
"code": "storage",
"description": "GB of storage used in my application",
"rounding_function": "round",
"rounding_precision": 2,
"created_at": "2022-09-14T16:35:31Z",
"expression": "round((event.properties.ended_at - event.properties.started_at) * event.properties.units)",
"field_name": "gb",
"aggregation_type": "sum_agg",
"weighted_interval": "seconds",
"filters": [
{
"key": "region",
"values": [
"us-east-1"
]
}
]
},
"alert_type": "billable_metric_current_usage_amount",
"code": "storage_threshold_alert",
"name": "Storage Usage Alert",
"direction": "increasing",
"previous_value": "1000.0",
"last_processed_at": "2025-05-19T10:04:21Z",
"thresholds": [
{
"code": "warn",
"notify_on": [
"triggered",
"resolved"
],
"value": "99.0"
}
],
"created_at": "2025-03-20T10:00:00Z"
}
}Changes
- info
the response property
//////became required for the status - info
the response property
//////became required for the status - info
the response property
//////became required for the status - info
the response property
//////became required for the status - info
the response property
//////became required for the status - info
the response property
//////became required for the status
- info
- breaking
request property
////////list-of-types was narrowed by removing typesintegerfrom media typeapplication/json - breaking
added
subschema #2to the/response propertyoneOflist for the response status - breaking
the
/response's property type changed fromobjectto no type for status - breaking
the
/response's property type changed fromnumbertostringfor status - breaking
removed the required property
//from the response with the status - breaking
removed the required property
//from the response with the status - breaking
removed the required property
//from the response with the status - breaking
removed the required property
//from the response with the status - breaking
removed the required property
//from the response with the status - breaking
removed the required property
//from the response with the status - warning
removed the optional property
//from the response with the status - warning
removed the optional property
//from the response with the status - warning
removed the optional property
//from the response with the status - warning
removed the optional property
//from the response with the status - warning
removed the optional property
//from the response with the status - warning
removed the optional property
//from the response with the status - warning
removed the optional property
//from the response with the status - warning
added the new
billable_metric_lifetime_usage_unitsenum value to the/response property for the response status - info
added the new optional request property
/////////// - info
added the new enum value
incompleteto thequeryrequest parametersubscription_status - info
the
/////////request property type was generalized fromintegertonumber - info
added the optional property
///////to the response with the status - info
the response property
/became required for the status - info
the response property
/became required for the status - info
the response property
/became required for the status - info
the
////response's property pattern was changed from^[0-9]+.?[0-9]*$to^-?[0-9]+(\.[0-9]+)?$for the status
- breaking