Bulk Import
The import endpoint allows you to add multiple URLs for monitoring in a single request. This is ideal for initial setup or bulk migrations.Import Watches
endpoint
/api/v1/import
Request Body
The request body should be plain text with one URL per line:Query Parameters
Special Parameters
string
Tag name to apply to all imported watches
string
Comma-separated tag UUIDs to apply to imported watches
string
Proxy configuration key to use for all imported watches
boolean
default:true
Skip URLs that already exist in the system
Configuration Parameters
You can pass any watch configuration field as a query parameter. All parameters from the Watch schema are supported:string
Processor mode:
text_json_diff or restock_diffstring
Fetcher:
system, html_requests, html_webdriver, extra_browser_*boolean
Import watches in paused state
string
Comma-separated notification URLs or JSON array format
string
JSON object with check interval:
{"hours":1,"minutes":30}string
Comma-separated CSS/XPath selectors or JSON array
Type Conversion
Query parameters are automatically converted to the correct type:Examples
Response
Small imports (< 20 URLs): Returns 200 OK with array of created UUIDsImports with 20 or more URLs are processed in the background to avoid blocking the API. You’ll receive a 202 status immediately.
Advanced Import Scenarios
Import with JSON Configuration
For complex configurations, use JSON objects in query parameters:Import from File
Import with Multiple Tags
Import Product Monitors
For e-commerce/product monitoring with therestock_diff processor:
Deduplication
By default, the import endpoint skips URLs that already exist (dedupe=true).
Disable Deduplication
Validation
All URLs are validated before import:- Must use
http://,https://, orftp://protocol - Must be a valid URL format
- Must not be empty or whitespace-only
Invalid URLs
Configuration Options
You can pass any of these watch configuration options as query parameters:Basic Settings
Basic Settings
processor- Change detection processorfetch_backend- Content fetcherpaused- Import in paused statenotification_muted- Mute notificationsmethod- HTTP method (GET, POST, etc.)
Notification Settings
Notification Settings
notification_urls- Notification endpointsnotification_title- Custom notification titlenotification_body- Custom notification bodynotification_format- Format (text, html, etc.)notification_screenshot- Include screenshots
Content Filtering
Content Filtering
include_filters- CSS/XPath to extractsubtractive_selectors- CSS/XPath to removeignore_text- Text patterns to ignoretrigger_text- Required trigger patternstext_should_not_be_present- Alert if found
Advanced Options
Advanced Options
time_between_check- Check intervalheaders- Custom HTTP headersbody- HTTP request bodyproxy- Proxy configurationbrowser_steps- Browser automation stepswebdriver_delay- Browser wait time
Best Practices
Use Tags
Always assign imported watches to tags for easier management:
Start Paused
Import in paused state to review before activating:
Batch Size
For very large imports (100+ URLs), split into smaller batches to monitor progress.
Validate URLs
Clean and validate your URL list before import to avoid errors mid-import.