To create Technology monitoring use this POST API.

HTTP Request

POST https://api.hexowatch.com/v2/app/services/v1/monitor?key="YOUR_API_KEY"

Parameters
Fields
YOUR_API_KEY

string

to get "YOUR_API_KEY" visit hexowatch settings webhook section and copy your key

Request Body
Fields
tool

string (required)*

You should provide a specific tool name.

For example.tool : "techStackTool"

address_list

string[] (required)*

You should provide an address list of monitoring urls.

For example.address_list : ["example1.com", "example2.com"]

emails_to_notify

string[] (required)*

You should provide an email(s) that is/are added and verified in your email notification.Add an email.

For example.emails_to_notify : ["[email protected]"]

alert_notification_settings

object (optional, default all fields are true)

You can choose which integrations you want to disable for this tool.Add an integration to get notification.

For example.alert_notification_settings : {"email": false, "telegram": false}

change_notification_level

string (optional, default "ANY")

You should provide change level from one of the possible values.

For example.change_notification_level : "ANY"

monitoring_interval

string (optional, default "1_DAY")

You should provide monitoring interval from one of the possible values.

For example.monitoring_interval : "2_WEEK"

pause_after_first_change_event

boolean (optional,default false)

You should decide whether to stop monitoring after the first change.

For example.pause_after_first_change_event : false

tags

string[] (optional,default [])

You can send tags for each monitoring.

For example."tags": ["tag1","tag2"]

webhook

string (optional,default null)

We’ll make a request to this url, in case we get error from provided webhook you will get an error, monitoring will not be created.

For example."webhook": "your-webhook"

tool_settings

object (see required fields and default values in the example below)

You should provide special settings for this tool

For example.
tool_settings: { 
"proxy": { "type": "premium", "country_code": "AR" },*REQUIRED if type === "premium"
"api_host_code": "USA", *OPTIONAL, DEFAULT
"user_agent": false, *OPTIONAL, DEFAULT
"mode": "ANY_CHANGE",*OPTIONAL, DEFAULT
"specific_tech_stacks": ["AWStats"],*REQUIRED if mode === SPECIFIC_TECH_STACK_SEARCH
}

Possible values for the fields
*Some values are available from a certain pricing plan. (check my plan)
alert_notification_settings

"email", "slack", "telegram", "zapier", "push_channel", "discord"

api_host_code

"EUROPE", "USA", "ASIA",

monitoring_interval

"5_MINUTE", "10_MINUTE", "15_MINUTE", "30_MINUTE", "1_HOUR", "2_HOUR","3_HOUR", "4_HOUR", "5_HOUR", "6_HOUR", "12_HOUR", "1_DAY", "2_DAY", "3_DAY", "1_WEEK", "2_WEEK", "1_MONTH", "2_MONTH", "3_MONTH"

proxy type

*Proxy type changes are available from Pro pricing plan.
"premium"

proxy country_code

*Proxy country code changes are available from Pro pricing plan.
"AF", "AL", "DZ", "AD", "AO", "AR", "AU", "AT", "AZ", "BH", "BD", "BB", "BY", "BJ", "BO", "BW", "BR", "BG", "BF", "BI", "KH", "CM", "CA", "CV", "CL", "CN", "CO", "CG", "CR", "HR", "CU", "CY", "CZ", "CI", "DK", "DO", "EC", "EG", "SV", "EE", "ET", "FJ", "FI", "FR", "GM", "GE", "DE", "GH", "GR", "GL", "GT", "GN", "HT", "HN", "HK", "HU", "IN", "ID", "IR", "IQ", "IL", "IT", "JM", "JP", "JO", "KE", "KZ", "KR", "KW", "KG", "LV", "LB", "LT", "MO", "MK", "MG", "MW", "MY", "MV", "ML", "MT", "MR", "MU", "MX", "MD", "MN", "MA", "MZ", "MM", "NA", "NP", "NL", "NI", "NE", "NG", "PK", "PA", "PY", "PE", "PH", "PL", "PT", "PR", "QA", "RO", "RU", "RW", "RE", "LC", "SM", "SA", "SN", "RS", "SL", "SG", "SK", "SI", "SO", "ZA", "ES", "LK", "SD", "SE", "TZ", "TH", "TG", "TT", "TN", "TR", "UG", "UA", "AE", "GB", "US", "UY", "UZ", "VE", "VN", "ZW"

change_notification_level

"ANY", "ADDED", "UPDATED","DELETED"

mode

"SPECIFIC_TECH_STACK_SEARCH", "ANY_CHANGE"

specific_tech_stacks

Only one value in array as string, Choose the value from the list:

Example

{

"address_list": ["example1.com", "example2.com"],

"tool": "techStackTool",

"alert_notification_settings": {

"email": false,

"telegram": false

},

"change_notification_level": "ANY",

"monitoring_interval": "2_WEEK",

"pause_after_first_change_event": false,

"emails_to_notify": ["[email protected]"],

"tags": ["tag1","tag2"],

"webhook": "your-webhook",

"tool_settings": {

"proxy": { "type": "", "country_code": "" },

"api_host_code": "USA",

"user_agent": false,

"mode": "SPECIFIC_TECH_STACK_SEARCH",

"specific_tech_stacks": ["AWStats"],

}

}

Response Body

if request is successful you will get

JSON representation

{

"error": false,

"message": "New monitoring(s) created.",

"monitoring_ids": [ 1240 ]

}

if request is not successful you will get

JSON representation

{

"error": true,

"message": String

}

Fields
error

boolean

if the error returns true, it means that an error has occurred

message

string

the message contains information about the error

Example

object {

"error": true,

"message": "invalid API key"

}

To create Keyword monitoring use this POST API.

HTTP Request

POST https://api.hexowatch.com/v2/app/services/v1/monitor?key="YOUR_API_KEY"

Parameters
Fields
YOUR_API_KEY

string

to get "YOUR_API_KEY" visit hexowatch settings webhook section and copy your key

Request Body
Fields
tool

string (required)*

You should provide a specific tool name.

For example.tool : "keywordTool"

address_list

string[] (required)*

You should provide an address list of monitoring urls.

For example.address_list : ["example1.com", "example2.com"]

emails_to_notify

string[] (required)*

You should provide an email(s) that is/are added and verified in your email notification.Add an email.

For example.emails_to_notify : ["[email protected]"]

alert_notification_settings

object (optional, default all fields are true)

You can choose which integrations you want to disable for this tool.Add an integration to get notification.

For example.alert_notification_settings : {"email": false, "telegram": false}

change_notification_level

string (optional, default "ANY")

You should provide change level from one of the possible values.

For example.change_notification_level : "ANY"

monitoring_interval

string (optional, default "1_DAY")

You should provide monitoring interval from one of the possible values.

For example.monitoring_interval : "2_WEEK"

pause_after_first_change_event

boolean (optional,default false)

You should decide whether to stop monitoring after the first change.

For example.pause_after_first_change_event : false

tags

string[] (optional,default [])

You can send tags for each monitoring.

For example."tags": ["tag1","tag2"]

webhook

string (optional,default null)

We’ll make a request to this url, in case we get error from provided webhook you will get an error, monitoring will not be created.

For example."webhook": "your-webhook"

tool_settings

object (see required fields and default values in the example below)

You should provide special settings for this tool

For example.
tool_settings: { 
"proxy": { "type": "premium", "country_code": "AR" },*REQUIRED if type === "premium"
"api_host_code": "USA", *OPTIONAL, DEFAULT
"user_agent": false, *OPTIONAL, DEFAULT
"mode": "SEARCH", *OPTIONAL, DEFAULT
"operators": ["OR"],*REQUIRED if keywords.length > 1
"keywords": ["example1", "example2"],*REQUIRED 
}

Possible values for the fields
*Some values are available from a certain pricing plan. (check my plan)
alert_notification_settings

"email", "slack", "telegram", "zapier", "push_channel", "discord"

api_host_code

"EUROPE", "USA", "ASIA",

monitoring_interval

"5_MINUTE", "10_MINUTE", "15_MINUTE", "30_MINUTE", "1_HOUR", "2_HOUR","3_HOUR", "4_HOUR", "5_HOUR", "6_HOUR", "12_HOUR", "1_DAY", "2_DAY", "3_DAY", "1_WEEK", "2_WEEK", "1_MONTH", "2_MONTH", "3_MONTH"

proxy type

*Proxy type changes are available from Pro pricing plan.
"premium"

proxy country_code

*Proxy country code changes are available from Pro pricing plan.
"AF", "AL", "DZ", "AD", "AO", "AR", "AU", "AT", "AZ", "BH", "BD", "BB", "BY", "BJ", "BO", "BW", "BR", "BG", "BF", "BI", "KH", "CM", "CA", "CV", "CL", "CN", "CO", "CG", "CR", "HR", "CU", "CY", "CZ", "CI", "DK", "DO", "EC", "EG", "SV", "EE", "ET", "FJ", "FI", "FR", "GM", "GE", "DE", "GH", "GR", "GL", "GT", "GN", "HT", "HN", "HK", "HU", "IN", "ID", "IR", "IQ", "IL", "IT", "JM", "JP", "JO", "KE", "KZ", "KR", "KW", "KG", "LV", "LB", "LT", "MO", "MK", "MG", "MW", "MY", "MV", "ML", "MT", "MR", "MU", "MX", "MD", "MN", "MA", "MZ", "MM", "NA", "NP", "NL", "NI", "NE", "NG", "PK", "PA", "PY", "PE", "PH", "PL", "PT", "PR", "QA", "RO", "RU", "RW", "RE", "LC", "SM", "SA", "SN", "RS", "SL", "SG", "SK", "SI", "SO", "ZA", "ES", "LK", "SD", "SE", "TZ", "TH", "TG", "TT", "TN", "TR", "UG", "UA", "AE", "GB", "US", "UY", "UZ", "VE", "VN", "ZW"

change_notification_level

"ANY"

mode

"SEARCH"

operators

"OR", "AND"

Example

{

"address_list": ["example1.com", "example2.com"],

"tool": "keywordTool",

"alert_notification_settings": {

"email": false,

"telegram": false

},

"change_notification_level": "ANY",

"monitoring_interval": "2_WEEK",

"pause_after_first_change_event": false,

"emails_to_notify": ["[email protected]"],

"tags": ["tag1","tag2"],

"webhook": "your-webhook",

"tool_settings": {

"proxy": { "type": "", "country_code": "" },

"api_host_code": "USA",

"user_agent": false,

"mode": "SEARCH",

"operators": ["OR"],

"keywords": ["example1", "example2"]

}

}

Response Body

if request is successful you will get

JSON representation

{

"error": false,

"message": "New monitoring(s) created.",

"monitoring_ids": [ 1240 ]

}

if request is not successful you will get

JSON representation

{

"error": true,

"message": String

}

Fields
error

boolean

if the error returns true, it means that an error has occurred

message

string

the message contains information about the error

Example

object {

"error": true,

"message": "invalid API key"

}

To create Visual monitoring use this POST API.

HTTP Request

POST https://api.hexowatch.com/v2/app/services/v1/monitor?key="YOUR_API_KEY"

Parameters
Fields
YOUR_API_KEY

string

to get "YOUR_API_KEY" visit hexowatch settings webhook section and copy your key

Request Body
Fields
tool

string (required)*

You should provide a specific tool name.

For example.tool : "visualMonitoringTool"

address_list

string[] (required)*

You should provide an address list of monitoring urls.

For example.address_list : ["example1.com", "example2.com"]

emails_to_notify

string[] (required)*

You should provide an email(s) that is/are added and verified in your email notification.Add an email.

For example.emails_to_notify : ["[email protected]"]

alert_notification_settings

object (optional, default all fields are true)

You can choose which integrations you want to disable for this tool.Add an integration to get notification.

For example.alert_notification_settings : {"email": false, "telegram": false}

change_notification_level

string (optional, default "ANY")

You should provide change level from one of the possible values.

For example.change_notification_level : "ANY"

monitoring_interval

string (optional, default "1_DAY")

You should provide monitoring interval from one of the possible values.

For example.monitoring_interval : "2_WEEK"

pause_after_first_change_event

boolean (optional,default false)

You should decide whether to stop monitoring after the first change.

For example.pause_after_first_change_event : false

tags

string[] (optional,default [])

You can send tags for each monitoring.

For example."tags": ["tag1","tag2"]

webhook

string (optional,default null)

We’ll make a request to this url, in case we get error from provided webhook you will get an error, monitoring will not be created.

For example."webhook": "your-webhook"

tool_settings

object (optional)

You should provide special settings for this tool

For example.
tool_settings: { 
"proxy": { "type": "premium", "country_code": "AR" },*REQUIRED if type === "premium"
"api_host_code": "USA", *OPTIONAL, DEFAULT
"user_agent": false, *OPTIONAL, DEFAULT
"mode": "FULL_SCREEN", *OPTIONAL, DEFALUT
"adblock": false, *OPTIONAL, DEFAULT
"device": "LAPTOP_LARGE", *OPTIONAL, DEFAULT
"full_stack": false, *OPTIONAL, DEFAULT
}

Possible values for the fields
*Some values are available from a certain pricing plan. (check my plan)
alert_notification_settings

"email", "slack", "telegram", "zapier", "push_channel", "discord"

api_host_code

"EUROPE", "USA", "ASIA",

monitoring_interval

"5_MINUTE", "10_MINUTE", "15_MINUTE", "30_MINUTE", "1_HOUR", "2_HOUR","3_HOUR", "4_HOUR", "5_HOUR", "6_HOUR", "12_HOUR", "1_DAY", "2_DAY", "3_DAY", "1_WEEK", "2_WEEK", "1_MONTH", "2_MONTH", "3_MONTH"

proxy type

*Proxy type changes are available from Pro pricing plan.
"premium"

proxy country_code

*Proxy country code changes are available from Pro pricing plan.
"AF", "AL", "DZ", "AD", "AO", "AR", "AU", "AT", "AZ", "BH", "BD", "BB", "BY", "BJ", "BO", "BW", "BR", "BG", "BF", "BI", "KH", "CM", "CA", "CV", "CL", "CN", "CO", "CG", "CR", "HR", "CU", "CY", "CZ", "CI", "DK", "DO", "EC", "EG", "SV", "EE", "ET", "FJ", "FI", "FR", "GM", "GE", "DE", "GH", "GR", "GL", "GT", "GN", "HT", "HN", "HK", "HU", "IN", "ID", "IR", "IQ", "IL", "IT", "JM", "JP", "JO", "KE", "KZ", "KR", "KW", "KG", "LV", "LB", "LT", "MO", "MK", "MG", "MW", "MY", "MV", "ML", "MT", "MR", "MU", "MX", "MD", "MN", "MA", "MZ", "MM", "NA", "NP", "NL", "NI", "NE", "NG", "PK", "PA", "PY", "PE", "PH", "PL", "PT", "PR", "QA", "RO", "RU", "RW", "RE", "LC", "SM", "SA", "SN", "RS", "SL", "SG", "SK", "SI", "SO", "ZA", "ES", "LK", "SD", "SE", "TZ", "TH", "TG", "TT", "TN", "TR", "UG", "UA", "AE", "GB", "US", "UY", "UZ", "VE", "VN", "ZW"

change_notification_level

"ANY", "GE_1" , "GE_2", "GE_3" , "GE_4", "GE_5","GE_6", "GE_7", "GE_8", "GE_9" , "GE_10", "GE_11","GE_12", "GE_13", "GE_14", "GE_15", "GE_20", "GE_25","GE_50"

mode

"FULL_SCREEN"

device

*Device type changes are available from Pro pricing plan.
"MOBILE_SMALL", "MOBILE_MEDIUM", "MOBILE_LARGE", "TABLET", "LAPTOP_SMALL", "LAPTOP_MEDIUM", "LAPTOP_LARGE", "DESKTOP_4K"

Example

{

"address_list": ["example1.com", "example2.com"],

"tool": "visualMonitoringTool",

"alert_notification_settings": {

"email": false,

"telegram": false

},

"change_notification_level": "ANY",

"monitoring_interval": "2_WEEK",

"pause_after_first_change_event": false,

"emails_to_notify": ["[email protected]"],

"tags": ["tag1","tag2"],

"webhook": "your-webhook",

"tool_settings": {

"proxy": { "type": "", "country_code": "" },

"api_host_code": "USA",

"user_agent": false,

"mode": "FULL_SCREEN",

"adblock": true,

"device": "TABLET",

"full_stack": true

}

}

Response Body

if request is successful you will get

JSON representation

{

"error": false,

"message": "New monitoring(s) created.",

"monitoring_ids": [ 1240 ]

}

if request is not successful you will get

JSON representation

{

"error": true,

"message": String

}

Fields
error

boolean

if the error returns true, it means that an error has occurred

message

string

the message contains information about the error

Example

object {

"error": true,

"message": "invalid API key"

}

To create Availability monitoring use this POST API.

HTTP Request

POST https://api.hexowatch.com/v2/app/services/v1/monitor?key="YOUR_API_KEY"

Parameters
Fields
YOUR_API_KEY

string

to get "YOUR_API_KEY" visit hexowatch settings webhook section and copy your key

Request Body
Fields
tool

string (required)*

You should provide a specific tool name.

For example.tool : "availabilityMonitoringTool"

address_list

string[] (required)*

You should provide an address list of monitoring urls.

For example.address_list : ["example1.com", "example2.com"]

emails_to_notify

string[] (required)*

You should provide an email(s) that is/are added and verified in your email notification.Add an email.

For example.emails_to_notify : ["[email protected]"]

alert_notification_settings

object (optional, default all fields are true)

You can choose which integrations you want to disable for this tool.Add an integration to get notification.

For example.alert_notification_settings : {"email": false, "telegram": false}

change_notification_level

string (optional, default "ANY")

You should provide change level from one of the possible values.

For example.change_notification_level : "ANY"

monitoring_interval

string (optional, default "1_DAY")

You should provide monitoring interval from one of the possible values.

For example.monitoring_interval : "2_WEEK"

pause_after_first_change_event

boolean (optional,default false)

You should decide whether to stop monitoring after the first change.

For example.pause_after_first_change_event : false

tags

string[] (optional,default [])

You can send tags for each monitoring.

For example."tags": ["tag1","tag2"]

webhook

string (optional,default null)

We’ll make a request to this url, in case we get error from provided webhook you will get an error, monitoring will not be created.

For example."webhook": "your-webhook"

tool_settings

object (optional)

You should provide special settings for this tool

For example.
tool_settings: { 
"proxy": { "type": "premium", "country_code": "AR" },*REQUIRED if type === "premium"
"api_host_code": "USA", *OPTIONAL, DEFAULT
"user_agent": false, *OPTIONAL, DEFAULT
}

Possible values for the fields
*Some values are available from a certain pricing plan. (check my plan)
alert_notification_settings

"email", "slack", "telegram", "zapier", "push_channel", "discord"

api_host_code

"EUROPE", "USA", "ASIA",

monitoring_interval

"5_MINUTE", "10_MINUTE", "15_MINUTE", "30_MINUTE", "1_HOUR", "2_HOUR","3_HOUR", "4_HOUR", "5_HOUR", "6_HOUR", "12_HOUR", "1_DAY", "2_DAY", "3_DAY", "1_WEEK", "2_WEEK", "1_MONTH", "2_MONTH", "3_MONTH"

proxy type

*Proxy type changes are available from Pro pricing plan.
"premium"

proxy country_code

*Proxy country code changes are available from Pro pricing plan.
"AF", "AL", "DZ", "AD", "AO", "AR", "AU", "AT", "AZ", "BH", "BD", "BB", "BY", "BJ", "BO", "BW", "BR", "BG", "BF", "BI", "KH", "CM", "CA", "CV", "CL", "CN", "CO", "CG", "CR", "HR", "CU", "CY", "CZ", "CI", "DK", "DO", "EC", "EG", "SV", "EE", "ET", "FJ", "FI", "FR", "GM", "GE", "DE", "GH", "GR", "GL", "GT", "GN", "HT", "HN", "HK", "HU", "IN", "ID", "IR", "IQ", "IL", "IT", "JM", "JP", "JO", "KE", "KZ", "KR", "KW", "KG", "LV", "LB", "LT", "MO", "MK", "MG", "MW", "MY", "MV", "ML", "MT", "MR", "MU", "MX", "MD", "MN", "MA", "MZ", "MM", "NA", "NP", "NL", "NI", "NE", "NG", "PK", "PA", "PY", "PE", "PH", "PL", "PT", "PR", "QA", "RO", "RU", "RW", "RE", "LC", "SM", "SA", "SN", "RS", "SL", "SG", "SK", "SI", "SO", "ZA", "ES", "LK", "SD", "SE", "TZ", "TH", "TG", "TT", "TN", "TR", "UG", "UA", "AE", "GB", "US", "UY", "UZ", "VE", "VN", "ZW"

change_notification_level

"ANY"

Example

{

"address_list": ["example1.com", "example2.com"],

"tool": "availabilityMonitoringTool",

"alert_notification_settings": {

"email": false,

"telegram": false

},

"change_notification_level": "ANY",

"monitoring_interval": "2_WEEK",

"pause_after_first_change_event": false,

"emails_to_notify": ["[email protected]"],

"tags": ["tag1","tag2"],

"webhook": "your-webhook",

"tool_settings": {

"proxy": { "type": "", "country_code": "" },

"api_host_code": "USA",

"user_agent": false,

}

}

Response Body

if request is successful you will get

JSON representation

{

"error": false,

"message": "New monitoring(s) created.",

"monitoring_ids": [ 1240 ]

}

if request is not successful you will get

JSON representation

{

"error": true,

"message": String

}

Fields
error

boolean

if the error returns true, it means that an error has occurred

message

string

the message contains information about the error

Example

object {

"error": true,

"message": "invalid API key"

}

To create Source code monitoring use this POST API.

HTTP Request

POST https://api.hexowatch.com/v2/app/services/v1/monitor?key="YOUR_API_KEY"

Parameters
Fields
YOUR_API_KEY

string

to get "YOUR_API_KEY" visit hexowatch settings webhook section and copy your key

Request Body
Fields
tool

string (required)*

You should provide a specific tool name.

For example.tool : "sourceCodeMonitoringTool"

address_list

string[] (required)*

You should provide an address list of monitoring urls.

For example.address_list : ["example1.com", "example2.com"]

emails_to_notify

string[] (required)*

You should provide an email(s) that is/are added and verified in your email notification.Add an email.

For example.emails_to_notify : ["[email protected]"]

alert_notification_settings

object (optional, default all fields are true)

You can choose which integrations you want to disable for this tool.Add an integration to get notification.

For example.alert_notification_settings : {"email": false, "telegram": false}

change_notification_level

string (optional, default "ANY")

You should provide change level from one of the possible values.

For example.change_notification_level : "ANY"

monitoring_interval

string (optional, default "1_DAY")

You should provide monitoring interval from one of the possible values.

For example.monitoring_interval : "2_WEEK"

pause_after_first_change_event

boolean (optional,default false)

You should decide whether to stop monitoring after the first change.

For example.pause_after_first_change_event : false

tags

string[] (optional,default [])

You can send tags for each monitoring.

For example."tags": ["tag1","tag2"]

webhook

string (optional,default null)

We’ll make a request to this url, in case we get error from provided webhook you will get an error, monitoring will not be created.

For example."webhook": "your-webhook"

tool_settings

object (see required fields and default values in the example below)

You should provide special settings for this tool

For example.
tool_settings: { 
"proxy": { "type": "premium", "country_code": "AR" },*REQUIRED if type === "premium"
"api_host_code": "USA", *OPTIONAL, DEFAULT
"user_agent": false, *OPTIONAL, DEFAULT
"mode": "FULL_CODE",*OPTIONAL, DEFAULT
"specific_codes": ["<h1>Hello world!</h1>"],*REQUIRED if mode === SPECIFIC_CODE 
"file_type": "HTML", *OPTIONAL, DEFAULT
}

Possible values for the fields
*Some values are available from a certain pricing plan. (check my plan)
alert_notification_settings

"email", "slack", "telegram", "zapier", "push_channel", "discord"

api_host_code

"EUROPE", "USA", "ASIA",

monitoring_interval

"5_MINUTE", "10_MINUTE", "15_MINUTE", "30_MINUTE", "1_HOUR", "2_HOUR","3_HOUR", "4_HOUR", "5_HOUR", "6_HOUR", "12_HOUR", "1_DAY", "2_DAY", "3_DAY", "1_WEEK", "2_WEEK", "1_MONTH", "2_MONTH", "3_MONTH"

proxy type

*Proxy type changes are available from Pro pricing plan.
"premium"

proxy country_code

*Proxy country code changes are available from Pro pricing plan.
"AF", "AL", "DZ", "AD", "AO", "AR", "AU", "AT", "AZ", "BH", "BD", "BB", "BY", "BJ", "BO", "BW", "BR", "BG", "BF", "BI", "KH", "CM", "CA", "CV", "CL", "CN", "CO", "CG", "CR", "HR", "CU", "CY", "CZ", "CI", "DK", "DO", "EC", "EG", "SV", "EE", "ET", "FJ", "FI", "FR", "GM", "GE", "DE", "GH", "GR", "GL", "GT", "GN", "HT", "HN", "HK", "HU", "IN", "ID", "IR", "IQ", "IL", "IT", "JM", "JP", "JO", "KE", "KZ", "KR", "KW", "KG", "LV", "LB", "LT", "MO", "MK", "MG", "MW", "MY", "MV", "ML", "MT", "MR", "MU", "MX", "MD", "MN", "MA", "MZ", "MM", "NA", "NP", "NL", "NI", "NE", "NG", "PK", "PA", "PY", "PE", "PH", "PL", "PT", "PR", "QA", "RO", "RU", "RW", "RE", "LC", "SM", "SA", "SN", "RS", "SL", "SG", "SK", "SI", "SO", "ZA", "ES", "LK", "SD", "SE", "TZ", "TH", "TG", "TT", "TN", "TR", "UG", "UA", "AE", "GB", "US", "UY", "UZ", "VE", "VN", "ZW"

file_type

"HTML", "CSS" , "JS"

mode

"SPECIFIC_CODE", "FULL_CODE"

change_notification_level

"ANY"

Example

{

"address_list": ["example1.com", "example2.com"],

"tool": "sourceCodeMonitoringTool",

"alert_notification_settings": {

"email": false,

"telegram": false

},

"change_notification_level": "ANY",

"monitoring_interval": "2_WEEK",

"pause_after_first_change_event": false,

"emails_to_notify": ["[email protected]"],

"tags": ["tag1","tag2"],

"webhook": "your-webhook",

"tool_settings": {

"proxy": { "type": "", "country_code": "" },

"api_host_code": "USA",

"user_agent": false,

"mode": "SPECIFIC_CODE",

"specific_codes": ["<h1>Hello world!</h1>"],

"file_type": "HTML",

}

}

Response Body

if request is successful you will get

JSON representation

{

"error": false,

"message": "New monitoring(s) created.",

"monitoring_ids": [ 1240 ]

}

if request is not successful you will get

JSON representation

{

"error": true,

"message": String

}

Fields
error

boolean

if the error returns true, it means that an error has occurred

message

string

the message contains information about the error

Example

object {

"error": true,

"message": "invalid API key"

}

To create Domain WHOIS monitoring use this POST API.

HTTP Request

POST https://api.hexowatch.com/v2/app/services/v1/monitor?key="YOUR_API_KEY"

Parameters
Fields
YOUR_API_KEY

string

to get "YOUR_API_KEY" visit hexowatch settings webhook section and copy your key

Request Body
Fields
tool

string (required)*

You should provide a specific tool name.

For example.tool : "domainWhoisTool"

address_list

string[] (required)*

You should provide an address list of monitoring urls.

For example.address_list : ["example1.com", "example2.com"]

emails_to_notify

string[] (required)*

You should provide an email(s) that is/are added and verified in your email notification.Add an email.

For example.emails_to_notify : ["[email protected]"]

alert_notification_settings

object (optional, default all fields are true)

You can choose which integrations you want to disable for this tool.Add an integration to get notification.

For example.alert_notification_settings : {"email": false, "telegram": false}

change_notification_level

string (optional, default "ANY")

You should provide change level from one of the possible values.

For example.change_notification_level : "ANY"

monitoring_interval

string (optional, default "1_DAY")

You should provide monitoring interval from one of the possible values.

For example.monitoring_interval : "2_WEEK"

pause_after_first_change_event

boolean (optional,default false)

You should decide whether to stop monitoring after the first change.

For example.pause_after_first_change_event : false

tags

string[] (optional,default [])

You can send tags for each monitoring.

For example."tags": ["tag1","tag2"]

webhook

string (optional,default null)

We’ll make a request to this url, in case we get error from provided webhook you will get an error, monitoring will not be created.

For example."webhook": "your-webhook"

tool_settings

object (see required fields and default values in the example below)

You should provide special settings for this tool

For example.
tool_settings: { 
"api_host_code": "USA", *OPTIONAL, DEFAULT
"user_agent": false, *OPTIONAL, DEFAULT
"mode": "ANY_CHANGE",*OPTIONAL, DEFAULT
"specific_fields": ["lastModified"],*REQUIRED if mode === SPECIFIC_FIELDS
"alertDay": 7, *OPTIONAL, DEFAULT
}

Possible values for the fields
*Some values are available from a certain pricing plan. (check my plan)
alert_notification_settings

"email", "slack", "telegram", "zapier", "push_channel", "discord"

api_host_code

"EUROPE", "USA", "ASIA",

monitoring_interval

"5_MINUTE", "10_MINUTE", "15_MINUTE", "30_MINUTE", "1_HOUR", "2_HOUR","3_HOUR", "4_HOUR", "5_HOUR", "6_HOUR", "12_HOUR", "1_DAY", "2_DAY", "3_DAY", "1_WEEK", "2_WEEK", "1_MONTH", "2_MONTH", "3_MONTH"

change_notification_level

"ANY"

mode

"ANY_CHANGE", "SPECIFIC_FIELDS"

alertDay

null, -90, -80, -70, -60, -45, -30, -15, -7, -1, 0, 1, 7, 15, 30, 45, 60, 70, 80, 90

specific_fields

"registeredAt", "lastModified", "fullText", "expiresAt", "exists", "domain", "url", "dnsData", "status",

Example

{

"address_list": ["example1.com", "example2.com"],

"tool": "domainWhoisTool",

"alert_notification_settings": {

"email": false,

"telegram": false

},

"change_notification_level": "ANY",

"monitoring_interval": "2_WEEK",

"pause_after_first_change_event": false,

"emails_to_notify": ["[email protected]"],

"tags": ["tag1","tag2"],

"webhook": "your-webhook",

"tool_settings": {

"api_host_code": "USA",

"user_agent": false,

"mode": "SPECIFIC_FIELDS",

"specific_fields": ["lastModified"],

"alertDay": 7,

}

}

Response Body

if request is successful you will get

JSON representation

{

"error": false,

"message": "New monitoring(s) created.",

"monitoring_ids": [ 1240 ]

}

if request is not successful you will get

JSON representation

{

"error": true,

"message": String

}

Fields
error

boolean

if the error returns true, it means that an error has occurred

message

string

the message contains information about the error

Example

object {

"error": true,

"message": "invalid API key"

}

To create Content monitoring use this POST API.

HTTP Request

POST https://api.hexowatch.com/v2/app/services/v1/monitor?key="YOUR_API_KEY"

Parameters
Fields
YOUR_API_KEY

string

to get "YOUR_API_KEY" visit hexowatch settings webhook section and copy your key

Request Body
Fields
tool

string (required)*

You should provide a specific tool name.

For example.tool : "contentMonitoringTool"

address_list

string[] (required)*

You should provide an address list of monitoring urls.

For example.address_list : ["example1.com", "example2.com"]

emails_to_notify

string[] (required)*

You should provide an email(s) that is/are added and verified in your email notification.Add an email.

For example.emails_to_notify : ["[email protected]"]

alert_notification_settings

object (optional, default all fields are true)

You can choose which integrations you want to disable for this tool.Add an integration to get notification.

For example.alert_notification_settings : {"email": false, "telegram": false}

change_notification_level

string (optional, default "ANY")

You should provide change level from one of the possible values.

For example.change_notification_level : "ANY"

monitoring_interval

string (optional, default "1_DAY")

You should provide monitoring interval from one of the possible values.

For example.monitoring_interval : "2_WEEK"

pause_after_first_change_event

boolean (optional,default false)

You should decide whether to stop monitoring after the first change.

For example.pause_after_first_change_event : false

tags

string[] (optional,default [])

You can send tags for each monitoring.

For example."tags": ["tag1","tag2"]

webhook

string (optional,default null)

We’ll make a request to this url, in case we get error from provided webhook you will get an error, monitoring will not be created.

For example."webhook": "your-webhook"

tool_settings

object (see required fields and default values in the example below)

You should provide special settings for this tool

For example.
tool_settings: { 
"proxy": { "type": "premium", "country_code": "AR" },*REQUIRED if type === "premium"
"api_host_code": "USA", *OPTIONAL, DEFAULT
"user_agent": false, *OPTIONAL, DEFAULT
"mode": "FULL_CONTENT",*OPTIONAL, DEFAULT
"contents": ["content here"],*REQUIRED if mode === SPECIFIC_CONTENT
}

Possible values for the fields
*Some values are available from a certain pricing plan. (check my plan)
alert_notification_settings

"email", "slack", "telegram", "zapier", "push_channel", "discord"

api_host_code

"EUROPE", "USA", "ASIA",

monitoring_interval

"5_MINUTE", "10_MINUTE", "15_MINUTE", "30_MINUTE", "1_HOUR", "2_HOUR","3_HOUR", "4_HOUR", "5_HOUR", "6_HOUR", "12_HOUR", "1_DAY", "2_DAY", "3_DAY", "1_WEEK", "2_WEEK", "1_MONTH", "2_MONTH", "3_MONTH"

proxy type

*Proxy type changes are available from Pro pricing plan.
"premium"

proxy country_code

*Proxy country code changes are available from Pro pricing plan.
"AF", "AL", "DZ", "AD", "AO", "AR", "AU", "AT", "AZ", "BH", "BD", "BB", "BY", "BJ", "BO", "BW", "BR", "BG", "BF", "BI", "KH", "CM", "CA", "CV", "CL", "CN", "CO", "CG", "CR", "HR", "CU", "CY", "CZ", "CI", "DK", "DO", "EC", "EG", "SV", "EE", "ET", "FJ", "FI", "FR", "GM", "GE", "DE", "GH", "GR", "GL", "GT", "GN", "HT", "HN", "HK", "HU", "IN", "ID", "IR", "IQ", "IL", "IT", "JM", "JP", "JO", "KE", "KZ", "KR", "KW", "KG", "LV", "LB", "LT", "MO", "MK", "MG", "MW", "MY", "MV", "ML", "MT", "MR", "MU", "MX", "MD", "MN", "MA", "MZ", "MM", "NA", "NP", "NL", "NI", "NE", "NG", "PK", "PA", "PY", "PE", "PH", "PL", "PT", "PR", "QA", "RO", "RU", "RW", "RE", "LC", "SM", "SA", "SN", "RS", "SL", "SG", "SK", "SI", "SO", "ZA", "ES", "LK", "SD", "SE", "TZ", "TH", "TG", "TT", "TN", "TR", "UG", "UA", "AE", "GB", "US", "UY", "UZ", "VE", "VN", "ZW"

change_notification_level

"ANY", "GE_1" , "GE_2", "GE_3" , "GE_4", "GE_5","GE_6", "GE_7", "GE_8", "GE_9" , "GE_10", "GE_11","GE_12", "GE_13", "GE_14", "GE_15", "GE_20", "GE_25","GE_50"

mode

"FULL_CONTENT", "SPECIFIC_CONTENT"

Example

{

"address_list": ["example1.com", "example2.com"],

"tool": "contentMonitoringTool",

"alert_notification_settings": {

"email": false,

"telegram": false

},

"change_notification_level": "ANY",

"monitoring_interval": "2_WEEK",

"pause_after_first_change_event": false,

"emails_to_notify": ["[email protected]"],

"tags": ["tag1","tag2"],

"webhook": "your-webhook",

"tool_settings": {

"proxy": { "type": "", "country_code": "" },

"api_host_code": "USA",

"user_agent": false,

"mode": "SPECIFIC_CONTENT",

"contents": ["content here"],

}

}

Response Body

if request is successful you will get

JSON representation

{

"error": false,

"message": "New monitoring(s) created.",

"monitoring_ids": [ 1240 ]

}

if request is not successful you will get

JSON representation

{

"error": true,

"message": String

}

Fields
error

boolean

if the error returns true, it means that an error has occurred

message

string

the message contains information about the error

Example

object {

"error": true,

"message": "invalid API key"

}

To create Backlink monitoring use this POST API.

HTTP Request

POST https://api.hexowatch.com/v2/app/services/v1/monitor?key="YOUR_API_KEY"

Parameters
Fields
YOUR_API_KEY

string

to get "YOUR_API_KEY" visit hexowatch settings webhook section and copy your key

Request Body
Fields
tool

string (required)*

You should provide a specific tool name.

For example.tool : "backlinkTool"

address_list

string[] (required)*

You should provide an address list of monitoring urls.

For example.address_list : ["example1.com", "example2.com"]

emails_to_notify

string[] (required)*

You should provide an email(s) that is/are added and verified in your email notification.Add an email.

For example.emails_to_notify : ["[email protected]"]

alert_notification_settings

object (optional, default all fields are true)

You can choose which integrations you want to disable for this tool.Add an integration to get notification.

For example.alert_notification_settings : {"email": false, "telegram": false}

change_notification_level

string (optional, default "ANY")

You should provide change level from one of the possible values.

For example.change_notification_level : "ANY"

monitoring_interval

string (optional, default "1_DAY")

You should provide monitoring interval from one of the possible values.

For example.monitoring_interval : "2_WEEK"

pause_after_first_change_event

boolean (optional,default false)

You should decide whether to stop monitoring after the first change.

For example.pause_after_first_change_event : false

tags

string[] (optional,default [])

You can send tags for each monitoring.

For example."tags": ["tag1","tag2"]

webhook

string (optional,default null)

We’ll make a request to this url, in case we get error from provided webhook you will get an error, monitoring will not be created.

For example."webhook": "your-webhook"

tool_settings

object (see required fields and default values in the example below)

You should provide special settings for this tool

For example.
tool_settings: { 
"proxy": { "type": "premium", "country_code": "AR" },*REQUIRED if type === "premium"
"api_host_code": "USA", *OPTIONAL, DEFAULT
"user_agent": false, *OPTIONAL, DEFAULT
"mode": "FULL_DATA",*OPTIONAL, DEFAULT
"keyword": "backlink",*REQUIRED
}

Possible values for the fields
*Some values are available from a certain pricing plan. (check my plan)
alert_notification_settings

"email", "slack", "telegram", "zapier", "push_channel", "discord"

api_host_code

"EUROPE", "USA", "ASIA",

monitoring_interval

"5_MINUTE", "10_MINUTE", "15_MINUTE", "30_MINUTE", "1_HOUR", "2_HOUR","3_HOUR", "4_HOUR", "5_HOUR", "6_HOUR", "12_HOUR", "1_DAY", "2_DAY", "3_DAY", "1_WEEK", "2_WEEK", "1_MONTH", "2_MONTH", "3_MONTH"

proxy type

*Proxy type changes are available from Pro pricing plan.
"premium"

proxy country_code

*Proxy country code changes are available from Pro pricing plan.
"AF", "AL", "DZ", "AD", "AO", "AR", "AU", "AT", "AZ", "BH", "BD", "BB", "BY", "BJ", "BO", "BW", "BR", "BG", "BF", "BI", "KH", "CM", "CA", "CV", "CL", "CN", "CO", "CG", "CR", "HR", "CU", "CY", "CZ", "CI", "DK", "DO", "EC", "EG", "SV", "EE", "ET", "FJ", "FI", "FR", "GM", "GE", "DE", "GH", "GR", "GL", "GT", "GN", "HT", "HN", "HK", "HU", "IN", "ID", "IR", "IQ", "IL", "IT", "JM", "JP", "JO", "KE", "KZ", "KR", "KW", "KG", "LV", "LB", "LT", "MO", "MK", "MG", "MW", "MY", "MV", "ML", "MT", "MR", "MU", "MX", "MD", "MN", "MA", "MZ", "MM", "NA", "NP", "NL", "NI", "NE", "NG", "PK", "PA", "PY", "PE", "PH", "PL", "PT", "PR", "QA", "RO", "RU", "RW", "RE", "LC", "SM", "SA", "SN", "RS", "SL", "SG", "SK", "SI", "SO", "ZA", "ES", "LK", "SD", "SE", "TZ", "TH", "TG", "TT", "TN", "TR", "UG", "UA", "AE", "GB", "US", "UY", "UZ", "VE", "VN", "ZW"

change_notification_level

"ANY"

mode

"FULL_DATA"

keyword

"backlink"

Example

{

"address_list": ["example1.com", "example2.com"],

"tool": "backlinkTool",

"alert_notification_settings": {

"email": false,

"telegram": false

},

"change_notification_level": "ANY",

"monitoring_interval": "2_WEEK",

"pause_after_first_change_event": false,

"emails_to_notify": ["[email protected]"],

"tags": ["tag1","tag2"],

"webhook": "your-webhook",

"tool_settings": {

"proxy": { "type": "", "country_code": "" },

"api_host_code": "USA",

"user_agent": false,

"mode": "FULL_DATA",

"keyword": "backlink",

}

}

Response Body

if request is successful you will get

JSON representation

{

"error": false,

"message": "New monitoring(s) created.",

"monitoring_ids": [ 1240 ]

}

if request is not successful you will get

JSON representation

{

"error": true,

"message": String

}

Fields
error

boolean

if the error returns true, it means that an error has occurred

message

string

the message contains information about the error

Example

object {

"error": true,

"message": "invalid API key"

}

To get all your monitored URLs ids use this get API.

HTTP Request

GET https://api.hexowatch.com/v2/app/services/v1/monitored_urls?key="YOUR_API_KEY"

Parameters
Fields
YOUR_API_KEY

string

to get "YOUR_API_KEY" visit hexowatch settings webhook section and copy your key

Response Body

if response is successful you will get

JSON representation

{

"error": false,

"monitored_urls": [

{ MonitoredUrls }

]

}

Fields
error

boolean

if the error returns true, it means that an error has occurred

monitored_urls []

object(monitored URLs)

monitored URLs is a list of urls in object representation

monitored URLs

monitored URLs object structure

JSON representation

MonitoredUrls = {

"id": Number,

"address": String,

"name": String,

"active": Boolean,

}

Fields
id

number

monitoring id

address

string

URL of the monitoring

name

string

name of the monitoring

active

boolean

if the monitoring is active

Example

object {

"error": false,

"monitored_urls": [

{

"id": 1234,

"address": "hexometer.com",

"name": "my_url",

"active": true,

},

{

"id": 2321,

"address": "hexometer.com",

"name": "my_2_url",

"active": false,

}

]

}

if request is not successful you will get

JSON representation

{

"error": true,

"message": String

}

Fields
error

boolean

if the error returns true, it means that an error has occurred

message

string

the message contains information about the error

Example

object {

"error": true,

"message": "invalid API key"

}


To pause, resume or check now your monitorings use the following PATCH request

HTTP Request

PATCH https://API.hexowatch.com/v2/app/services/v1/action?key="YOUR_API_KEY"

Request Body
Fields
action

enum(action)

you should provide type of the action and monitoring ids that you want to perform actions on if you pass monitoring_ids field as null action will be performed on each of your monitorings (you should have got the monitoring ids in the previous GET request)

monitoring_ids

array(number) or null

you should provide type of the action and monitoring ids that you want to perform actions on if you pass monitoring_ids field as null action will be performed on each of your monitorings (you should have got the monitoring ids in the previous GET request)

Action
Enum
pausepause will stop monitor URL
resumeresume will start monitor URL
check_nowcheck_now will monitor right now
Example

object {

"action": "check_now",

"monitoring_ids": [1234, 2321]

}

if request is not successful you will get

JSON representation

{

"error": true,

"message": String

}

Fields
error

boolean

if the error returns true, it means that an error has occurred

message

string

the message contains information about the error

Example

object {

"error": true,

"message": "invalid API key"

}