Monitors

Authentication
The API key should be sent as a Bearer token in the Authorization header of the request. Get your API key.
List

API endpoint

GET
https://api.monitoraweb.com/v1/monitors

Request example

curl --location --request GET 'https://api.monitoraweb.com/v1/monitors' \
--header 'Accept: application/json' \
--header 'Authorization: Bearer {api_key}'

Parameters

Name
Type
Description
search
optional string
The search query.
search_by
optional string
Search by. Possible values are: name for Name, url for URL. Defaults to: name.
host
optional string
Exact hostname, with or without www. Example: ejemplo.com.
status_page_id
optional integer
Status page ID.
sort_by
optional string
Sort by. Possible values are: id for Date created, name for Name, url for URL. Defaults to: id.
sort
optional string
Sort. Possible values are: desc for Descending, asc for Descending. Defaults to: desc.
per_page
optional integer
Results per page. Possible values are: 10, 25, 50, 100. Defaults to: 10.
Show

API endpoint

GET
https://api.monitoraweb.com/v1/monitors/{id}

Request example

curl --location --request GET 'https://api.monitoraweb.com/v1/monitors/{id}' \
--header 'Accept: application/json' \
--header 'Authorization: Bearer {api_key}'
Store

API endpoint

POST
https://api.monitoraweb.com/v1/monitors

Request example

curl --location --request POST 'https://api.monitoraweb.com/v1/monitors' \
--header 'Content-Type: application/x-www-form-urlencoded' \
--header 'Authorization: Bearer {api_key}' \
--data-urlencode 'name={name}' \
--data-urlencode 'url={url}' \
--data-urlencode 'interval={interval}'

Parameters

Name
Type
Description
name
required string
Name.
url
required string
URL.
interval
required integer
Interval. Possible values are: 60, 180, 300, 600, 900, 1800, 3600.
alert_condition
optional string
Alert condition. Possible values are: url_unavailable for URL becomes unavailable, url_text for URL response contains text, url_no_text for URL response does not contain text. Defaults to: url_unavailable.
alert_text_lookup
optional string
Text to be looked-up to trigger alerts. Only works with alert_condition field set to url_text, url_no_text.
alert_channel_ids[]
optional array
Alert channel IDs.
source
optional string
Origin of the monitor. Possible values are: btl360, zygore, api, manual. Defaults to: api. Also accepted as the X-Source header.
btl360_client_id
optional integer
BTL360 client ID associated with this monitor.
zygore_client_id
optional string
Zygore account ID associated with this monitor. Sent and returned as text, exactly as Zygore writes it.
hosting
optional string
Web hosting provider pushed by BTL360. Possible values are: Banahosting, Siteground, Desconocido. Also accepted as hosting_provider.
ads
optional integer
Active Ads campaign with BTL360. Possible values are: 1 / Sí for Sí, 0 / No for No.
request_method
optional string
Request method. Possible values are: GET, POST, HEAD, PUT, DELETE, PATCH, OPTIONS. Defaults to: GET.
request_headers[index][key]
optional string
Request header name.
request_headers[index][value]
optional string
Request header value.
request_auth_username
optional string
Username for Basic HTTP request authentication.
request_auth_password
optional string
Password for Basic HTTP request authentication.
cache_buster
optional integer
Cache buster. Possible values are: 0 for Disabled, 1 for Enabled. Defaults to: 0.
ssl_alert_days
optional integer
The number of days before SSL certificate expiration to receive an alert. Possible values are: 0, 1, 2, 3, 7, 14, 30, 60.
domain_alert_days
optional integer
The number of days before domain name expiration to receive an alert. Possible values are: 0, 1, 2, 3, 7, 14, 30, 60.
maintenance_start_at
optional string
Maintenance starting date in Y-m-dTH:i:s format.
maintenance_end_at
optional string
Maintenance ending date in Y-m-dTH:i:s format.
Update

API endpoint

PUT PATCH
https://api.monitoraweb.com/v1/monitors/{id}

Request example

curl --location --request PUT 'https://api.monitoraweb.com/v1/monitors/{id}' \
--header 'Content-Type: application/x-www-form-urlencoded' \
--header 'Authorization: Bearer {api_key}'

Parameters

Name
Type
Description
name
optional string
Name.
url
optional string
URL.
interval
optional integer
Interval. Possible values are: 60, 180, 300, 600, 900, 1800, 3600.
alert_condition
optional string
Alert condition. Possible values are: url_unavailable for URL becomes unavailable, url_text for URL response contains text, url_no_text for URL response does not contain text. Defaults to: url_unavailable.
alert_text_lookup
optional string
Text to be looked-up to trigger alerts. Only works with alert_condition field set to url_text, url_no_text.
alert_channel_ids[]
optional array
Alert channel IDs.
source
optional string
Origin of the monitor. Possible values are: btl360, zygore, api, manual. Defaults to: api. Also accepted as the X-Source header.
btl360_client_id
optional integer
BTL360 client ID associated with this monitor.
zygore_client_id
optional string
Zygore account ID associated with this monitor. Sent and returned as text, exactly as Zygore writes it.
hosting
optional string
Web hosting provider pushed by BTL360. Possible values are: Banahosting, Siteground, Desconocido. Also accepted as hosting_provider.
ads
optional integer
Active Ads campaign with BTL360. Possible values are: 1 / Sí for Sí, 0 / No for No.
request_method
optional string
Request method. Possible values are: GET, POST, HEAD, PUT, DELETE, PATCH, OPTIONS. Defaults to: GET.
request_headers[index][key]
optional string
Request header name.
request_headers[index][value]
optional string
Request header value.
request_auth_username
optional string
Username for Basic HTTP request authentication.
request_auth_password
optional string
Password for Basic HTTP request authentication.
cache_buster
optional integer
Cache buster. Possible values are: 0 for Disabled, 1 for Enabled.
ssl_alert_days
optional integer
The number of days before SSL certificate expiration to receive an alert. Possible values are: 0, 1, 2, 3, 7, 14, 30, 60.
domain_alert_days
optional integer
The number of days before domain name expiration to receive an alert. Possible values are: 0, 1, 2, 3, 7, 14, 30, 60.
maintenance_start_at
optional string
Maintenance starting date in Y-m-dTH:i:s format.
maintenance_end_at
optional string
Maintenance ending date in Y-m-dTH:i:s format.
pause
optional boolean
Pause the monitor without deleting it. Use true / 1 to pause (stop HTTP, SSL, domain checks and webhooks) and false / 0 to resume the same monitor. Incidents and check history are kept.
BTL360 sync

API endpoint

POST
https://apibtl.monitoraweb.com/v1/monitors/btl360-sync

One JSON request to pause or resume by host and to fill Hosting and ADS. Does not create or delete monitors. History is kept.

Request example

curl --location --request POST 'https://apibtl.monitoraweb.com/v1/monitors/btl360-sync' \
--header 'Accept: application/json' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer {api_key}' \
--data-raw '{
  "generated_at": "2026-09-12T00:00:00Z",
  "pausar": [
    {"host": "viejo.com", "cliente_id": 15, "motivo": "inactivo_agencia"}
  ],
  "reanudar": [
    {"host": "cliente-vuelve.com", "cliente_id": 22}
  ],
  "hosting": [
    {"host": "ejemplo.com", "hosting_provider": "Banahosting"}
  ],
  "ads": [
    {"host": "cliente-con-campana.com", "ads": "Sí"}
  ]
}'
Delete

API endpoint

DELETE
https://api.monitoraweb.com/v1/monitors/{id}

Request example

curl --location --request DELETE 'https://api.monitoraweb.com/v1/monitors/{id}' \
--header 'Authorization: Bearer {api_key}'