Skip to content

Update an alert channel

PUT
/api/v1/alerts/{uuid}
curl --request PUT \
--url https://app.hostrepute.com/api/v1/alerts/01a178db-d7b6-7131-a50c-cb60224dd1cd \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '{ "type": "email", "settings": null, "frequency": "once_on_listed_delisted", "is_active": true, "alert_group_uuids": [ "01a178db-d7b4-730d-82fa-5fb952d888e4" ] }'

Change an alert channel. Send only the fields you want to change. When you change type, also send the settings field for the new type. When you change a webhook channel’s URL and leave out settings.webhook_secret, the current secret is kept.

Needs the alert:update ability.

uuid
required
string

The UUID of the alert channel.

Example

01a178db-d7b6-7131-a50c-cb60224dd1cd
Media typeapplication/json
object
type

The kind of channel. Your plan decides which ones you can use.

string
Allowed values: email slack telegram discord pagerduty pushover webhook

Example

null
settings

Where the channel sends alerts. Send the one field that matches the channel’s type.

object
email

The email address to send alerts to.

string

Example

null
slack_webhook_url

A Slack incoming webhook URL on hooks.slack.com.

string

Example

null
telegram_chat_id

The Telegram chat ID to send alerts to.

string

Example

null
discord_webhook_url

A Discord webhook URL on discord.com.

string

Example

null
pagerduty_routing_key

The integration (routing) key of a PagerDuty Events API v2 integration.

string

Example

null
pushover_user_key

Your Pushover user key.

string

Example

null
webhook_url

The public HTTPS URL HostRepute posts alerts to.

string

Example

null
webhook_secret

A new signing secret, 32 to 255 characters. Leave it out to keep the current one.

string
nullable

Example

null

Example

null
frequency

Which blocklist alerts the channel gets: once_on_listed_delisted when a domain or IP is listed and again when it is removed, or once_per_check_while_listed only when it is listed.

string
Allowed values: once_on_listed_delisted once_per_check_while_listed

Example

once_per_check_while_listed
is_active

Whether the channel sends alerts. A channel your plan no longer includes can still be turned off.

boolean

Example

true
alert_group_uuids

The UUIDs of the delivery hours this channel follows. Replaces the current list.

Array<string>

Example

[
"01a178db-d7b4-730d-82fa-5fb952d888e4"
]
Media typeapplication/json
object
data
object
uuid
string
type
string
frequency
string
is_active
boolean
last_sent_at
string
alert_groups
Array<object>
object
uuid
string
name
string
slug
string
timezone
string
schedule
object
mon
object
enabled
boolean
start
string
end
string
tue
object
enabled
boolean
start
string
end
string
wed
object
enabled
boolean
start
string
end
string
thu
object
enabled
boolean
start
string
end
string
fri
object
enabled
boolean
start
string
end
string
sat
object
enabled
boolean
start
string
end
string
sun
object
enabled
boolean
start
string
end
string
is_default
boolean
created_at
string
updated_at
string
created_at
string
updated_at
string

Example

{
"data": {
"uuid": "01a178db-d7b6-7131-a50c-cb60224dd1cd",
"type": "email",
"frequency": "once_per_check_while_listed",
"is_active": true,
"last_sent_at": "2026-10-25T21:31:02.000000Z",
"alert_groups": [
{
"uuid": "01a178db-d7b4-730d-82fa-5fb952d888e4",
"name": "Business hours",
"slug": "business-hours",
"timezone": "America/New_York",
"schedule": {
"mon": {
"enabled": true,
"start": "08:00",
"end": "18:00"
},
"tue": {
"enabled": true,
"start": "08:00",
"end": "18:00"
},
"wed": {
"enabled": true,
"start": "08:00",
"end": "18:00"
},
"thu": {
"enabled": true,
"start": "08:00",
"end": "18:00"
},
"fri": {
"enabled": true,
"start": "08:00",
"end": "18:00"
},
"sat": {
"enabled": false,
"start": "08:00",
"end": "18:00"
},
"sun": {
"enabled": false,
"start": "08:00",
"end": "18:00"
}
},
"is_default": false,
"created_at": "2026-07-15T13:02:19.000000Z",
"updated_at": "2026-07-15T13:02:19.000000Z"
}
],
"created_at": "2026-07-15T13:04:51.000000Z",
"updated_at": "2026-10-26T15:37:16.000000Z"
}
}

No alert channel with this UUID in your team

Media typeapplication/json
object
message
string

Example

{
"message": "No query results for model [App\\Models\\Alert] 01a178db-d7b6-7131-a50c-cb60224dd1cd"
}

Channel not on your plan

Media typeapplication/json
object
message
string
errors
object
type
Array<string>

Example

{
"message": "This alert destination channel is not available on your current subscription plan.",
"errors": {
"type": [
"This alert destination channel is not available on your current subscription plan."
]
}
}