v0.44
Some sites use JavaScript to create the content, for this you should use the Chrome/WebDriver Fetcher
You can use variables in the URL, perfect for inserting the current date and other logic, help and examples here
Current mode: Re-stock detection.
Switch to Webpage Text/HTML, JSON and PDF changes mode.
Organisational tag/group name used in the main listing page
Currently using the default global settings, change to another value if you want to be specific.
Sends a notification when the filter can no longer be seen on the page, good for knowing when the page changed and your filter will not work anymore.

Use the Basic method (default) where your watched site doesn't need Javascript to render.

The Chrome/Javascript method requires a network connection to a running WebDriver+Chrome server, set by the ENV var 'WEBDRIVER_URL'.

Tip: Connect using BrightData Proxies, find out more here.
If you're having trouble waiting for the page to be fully rendered (text missing etc), try increasing the 'wait' time here.
This will wait n seconds before extracting the text.
Using the current global default settings
Run this code before performing change detection, handy for filling in fields and other actions More help and examples here
Request override is currently only used by the Basic fast Plaintext/HTTP Client method.
Headers can be also read from a file in your data-directory Read more here
(Not supported by Selenium browser)
Use system defaults
  • Use AppRise URLs for notification to just about any service! Please read the notification services wiki here for important configuration notes.
  • discord:// only supports a maximum 2,000 characters of notification text, including the title.
  • tgram:// bots cant send messages to other bots, so you should specify chat ID of non-bot user.
  • tgram:// only supports very limited HTML and can fail when extra tags are sent, read more here (or use plaintext/markdown format)
  • gets://, posts://, puts://, deletes:// for direct API calls (or omit the "s" for non-SSL ie get://)
  • Accepts the {{token}} placeholders listed below
Title for all notifications
Body for all notifications
Format for all notifications

You can use Jinja2 templating in the notification title, body and URL.

Token Description
{{base_url}} The URL of the changedetection.io instance you are running.
{{watch_url}} The URL being watched.
{{watch_uuid}} The UUID of the watch.
{{watch_title}} The title of the watch.
{{watch_tag}} The watch label / tag
{{preview_url}} The URL of the preview page generated by changedetection.io.
{{diff_url}} The URL of the diff output for the watch.
{{diff}} The diff output - only changes, additions, and removals
{{diff_added}} The diff output - only changes and additions
{{diff_removed}} The diff output - only changes and removals
{{diff_full}} The diff output - full difference output
{{current_snapshot}} The current snapshot value, useful when combined with JSON or CSS filters
{{triggered_text}} Text that tripped the trigger from filters

URLs generated by changedetection.io (such as {{diff_url}}) require the BASE_URL environment variable set.
Your BASE_URL var is currently ""
Warning: Contents of {{diff}}, {{diff_removed}}, and {{diff_added}} depend on how the difference algorithm perceives the change. For example, an addition or removal could be perceived as a change in some cases. More Here
Only trigger notifications when page changes from out of stock to back in stock